@@ -24,10 +24,10 @@ |
||
24 | 24 | class EE_CPT_Strategy extends EE_BASE { |
25 | 25 | |
26 | 26 | /** |
27 | - * EE_CPT_Strategy Object |
|
28 | - * @private _instance |
|
29 | - * @private protected |
|
30 | - */ |
|
27 | + * EE_CPT_Strategy Object |
|
28 | + * @private _instance |
|
29 | + * @private protected |
|
30 | + */ |
|
31 | 31 | private static $_instance = NULL; |
32 | 32 | |
33 | 33 |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Event Espresso |
4 | 6 | * |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | */ |
79 | 79 | public static function instance() { |
80 | 80 | // check if class object is instantiated |
81 | - if ( ! self::$_instance instanceof EE_CPT_Strategy ) { |
|
81 | + if ( ! self::$_instance instanceof EE_CPT_Strategy) { |
|
82 | 82 | self::$_instance = new self(); |
83 | 83 | } |
84 | 84 | return self::$_instance; |
@@ -101,7 +101,7 @@ discard block |
||
101 | 101 | // d( $this->_CPT_endpoints ); |
102 | 102 | // d( $this->_CPT_taxonomies ); |
103 | 103 | |
104 | - add_action( 'pre_get_posts', array( $this, 'pre_get_posts' ), 5 ); |
|
104 | + add_action('pre_get_posts', array($this, 'pre_get_posts'), 5); |
|
105 | 105 | } |
106 | 106 | |
107 | 107 | |
@@ -114,9 +114,9 @@ discard block |
||
114 | 114 | */ |
115 | 115 | private function _set_CPT_endpoints() { |
116 | 116 | $_CPT_endpoints = array(); |
117 | - if ( is_array( $this->_CPTs )) { |
|
118 | - foreach ( $this->_CPTs as $CPT_type => $CPT ) { |
|
119 | - $_CPT_endpoints [ $CPT['plural_slug'] ] = $CPT_type; |
|
117 | + if (is_array($this->_CPTs)) { |
|
118 | + foreach ($this->_CPTs as $CPT_type => $CPT) { |
|
119 | + $_CPT_endpoints [$CPT['plural_slug']] = $CPT_type; |
|
120 | 120 | } |
121 | 121 | } |
122 | 122 | return $_CPT_endpoints; |
@@ -131,7 +131,7 @@ discard block |
||
131 | 131 | * @param WP_Query $WP_Query |
132 | 132 | * @return void |
133 | 133 | */ |
134 | - private function _set_EE_tags_on_WP_Query( WP_Query $WP_Query) { |
|
134 | + private function _set_EE_tags_on_WP_Query(WP_Query $WP_Query) { |
|
135 | 135 | $WP_Query->is_espresso_event_single = FALSE; |
136 | 136 | $WP_Query->is_espresso_event_archive = FALSE; |
137 | 137 | $WP_Query->is_espresso_event_taxonomy = FALSE; |
@@ -158,16 +158,16 @@ discard block |
||
158 | 158 | */ |
159 | 159 | private function _set_CPT_taxonomies() { |
160 | 160 | // check if taxonomies have already been set |
161 | - if ( empty( $this->_CPT_taxonomies )) { |
|
161 | + if (empty($this->_CPT_taxonomies)) { |
|
162 | 162 | // and that this CPT has taxonomies registered for it |
163 | - if ( isset( $this->CPT['args'] ) && isset( $this->CPT['args']['taxonomies'] )) { |
|
163 | + if (isset($this->CPT['args']) && isset($this->CPT['args']['taxonomies'])) { |
|
164 | 164 | // if so then grab them, but we want the taxonomy name as the key |
165 | - $taxonomies = array_flip( $this->CPT['args']['taxonomies'] ); |
|
165 | + $taxonomies = array_flip($this->CPT['args']['taxonomies']); |
|
166 | 166 | // then grab the list of ALL taxonomies |
167 | 167 | $all_taxonomies = EE_Register_CPTs::get_taxonomies(); |
168 | - foreach ( $taxonomies as $taxonomy => $details ) { |
|
168 | + foreach ($taxonomies as $taxonomy => $details) { |
|
169 | 169 | // add details to our taxonomies if they exist |
170 | - $taxonomies[ $taxonomy ] = isset( $all_taxonomies[ $taxonomy ] ) ? $all_taxonomies[ $taxonomy ] : NULL; |
|
170 | + $taxonomies[$taxonomy] = isset($all_taxonomies[$taxonomy]) ? $all_taxonomies[$taxonomy] : NULL; |
|
171 | 171 | } |
172 | 172 | $this->_CPT_taxonomies = $taxonomies; |
173 | 173 | } |
@@ -192,11 +192,11 @@ discard block |
||
192 | 192 | * @return void |
193 | 193 | */ |
194 | 194 | private function _set_CPT_terms() { |
195 | - if ( empty( $this->_CPT_terms )) { |
|
195 | + if (empty($this->_CPT_terms)) { |
|
196 | 196 | $terms = EEM_Term::instance()->get_all_CPT_post_tags(); |
197 | - foreach ( $terms as $term ) { |
|
198 | - if ( $term instanceof EE_Term ) { |
|
199 | - $this->_CPT_terms[ $term->slug() ] = $term; |
|
197 | + foreach ($terms as $term) { |
|
198 | + if ($term instanceof EE_Term) { |
|
199 | + $this->_CPT_terms[$term->slug()] = $term; |
|
200 | 200 | } |
201 | 201 | } |
202 | 202 | } |
@@ -211,24 +211,24 @@ discard block |
||
211 | 211 | * @param $WP_Query |
212 | 212 | * @return void |
213 | 213 | */ |
214 | - private function _set_post_type_for_terms( WP_Query $WP_Query ) { |
|
214 | + private function _set_post_type_for_terms(WP_Query $WP_Query) { |
|
215 | 215 | // is a tag set ? |
216 | - if ( isset( $WP_Query->query['tag'] )) { |
|
216 | + if (isset($WP_Query->query['tag'])) { |
|
217 | 217 | // set post_tags |
218 | 218 | $this->_set_CPT_terms(); |
219 | 219 | // is this tag archive term in the list of terms used by our CPTs ? |
220 | - $term = isset ( $this->_CPT_terms[ $WP_Query->query['tag'] ] ) ? $this->_CPT_terms[ $WP_Query->query['tag'] ] : NULL; |
|
220 | + $term = isset ($this->_CPT_terms[$WP_Query->query['tag']]) ? $this->_CPT_terms[$WP_Query->query['tag']] : NULL; |
|
221 | 221 | // verify the term |
222 | - if ( $term instanceof EE_Term ) { |
|
223 | - $term->post_type = array_merge( array( 'post', 'page' ), (array)$term->post_type ); |
|
224 | - $term->post_type = apply_filters( 'FHEE__EE_CPT_Strategy___set_post_type_for_terms__term_post_type', $term->post_type, $term ); |
|
222 | + if ($term instanceof EE_Term) { |
|
223 | + $term->post_type = array_merge(array('post', 'page'), (array) $term->post_type); |
|
224 | + $term->post_type = apply_filters('FHEE__EE_CPT_Strategy___set_post_type_for_terms__term_post_type', $term->post_type, $term); |
|
225 | 225 | // if a post type is already set |
226 | - if ( isset( $WP_Query->query_vars['post_type'] )) { |
|
226 | + if (isset($WP_Query->query_vars['post_type'])) { |
|
227 | 227 | // add to existing array |
228 | - $term->post_type = array_merge ( (array)$WP_Query->query_vars['post_type'], $term->post_type ); |
|
228 | + $term->post_type = array_merge((array) $WP_Query->query_vars['post_type'], $term->post_type); |
|
229 | 229 | } |
230 | 230 | // just set post_type to our CPT |
231 | - $WP_Query->set( 'post_type', $term->post_type ); |
|
231 | + $WP_Query->set('post_type', $term->post_type); |
|
232 | 232 | } |
233 | 233 | } |
234 | 234 | } |
@@ -243,17 +243,17 @@ discard block |
||
243 | 243 | * in order for is_archive() and is_single() methods to work properly. |
244 | 244 | * @return void |
245 | 245 | */ |
246 | - public function _possibly_set_ee_request_var(){ |
|
246 | + public function _possibly_set_ee_request_var() { |
|
247 | 247 | // check if ee action var has been set |
248 | - if ( ! EE_Registry::instance()->REQ->is_set( 'ee' )) { |
|
248 | + if ( ! EE_Registry::instance()->REQ->is_set('ee')) { |
|
249 | 249 | // check that route exists for CPT archive slug |
250 | - if ( is_archive() && EE_Config::get_route( $this->CPT['plural_slug'] )) { |
|
250 | + if (is_archive() && EE_Config::get_route($this->CPT['plural_slug'])) { |
|
251 | 251 | // ie: set "ee" to "events" |
252 | - EE_Registry::instance()->REQ->set( 'ee', $this->CPT['plural_slug'] ); |
|
252 | + EE_Registry::instance()->REQ->set('ee', $this->CPT['plural_slug']); |
|
253 | 253 | // or does it match a single page CPT like /event/ |
254 | - } else if ( is_single() && EE_Config::get_route( $this->CPT['singular_slug'] )) { |
|
254 | + } else if (is_single() && EE_Config::get_route($this->CPT['singular_slug'])) { |
|
255 | 255 | // ie: set "ee" to "event" |
256 | - EE_Registry::instance()->REQ->set( 'ee', $this->CPT['singular_slug'] ); |
|
256 | + EE_Registry::instance()->REQ->set('ee', $this->CPT['singular_slug']); |
|
257 | 257 | } |
258 | 258 | } |
259 | 259 | } |
@@ -267,11 +267,11 @@ discard block |
||
267 | 267 | * @param WP_Query $WP_Query |
268 | 268 | * @return void |
269 | 269 | */ |
270 | - public function _set_paging( $WP_Query ) { |
|
271 | - if ( $WP_Query->is_main_query() && apply_filters( 'FHEE__EE_CPT_Strategy___set_paging', TRUE )) { |
|
272 | - $page = ( get_query_var('page') ) ? get_query_var('page') : NULL; |
|
273 | - $paged = ( get_query_var('paged') ) ? get_query_var('paged') : $page; |
|
274 | - $WP_Query->set( 'paged', $paged ); |
|
270 | + public function _set_paging($WP_Query) { |
|
271 | + if ($WP_Query->is_main_query() && apply_filters('FHEE__EE_CPT_Strategy___set_paging', TRUE)) { |
|
272 | + $page = (get_query_var('page')) ? get_query_var('page') : NULL; |
|
273 | + $paged = (get_query_var('paged')) ? get_query_var('paged') : $page; |
|
274 | + $WP_Query->set('paged', $paged); |
|
275 | 275 | } |
276 | 276 | } |
277 | 277 | |
@@ -288,35 +288,35 @@ discard block |
||
288 | 288 | * @param WP_Query $WP_Query |
289 | 289 | * @return void |
290 | 290 | */ |
291 | - public function pre_get_posts( $WP_Query ) { |
|
291 | + public function pre_get_posts($WP_Query) { |
|
292 | 292 | // check that post-type is set |
293 | - if ( ! $WP_Query instanceof WP_Query ) { |
|
293 | + if ( ! $WP_Query instanceof WP_Query) { |
|
294 | 294 | return; |
295 | 295 | } |
296 | 296 | |
297 | 297 | // add our conditionals |
298 | - $this->_set_EE_tags_on_WP_Query( $WP_Query ); |
|
298 | + $this->_set_EE_tags_on_WP_Query($WP_Query); |
|
299 | 299 | // check for terms |
300 | - $this->_set_post_type_for_terms( $WP_Query ); |
|
300 | + $this->_set_post_type_for_terms($WP_Query); |
|
301 | 301 | // make sure paging is always set |
302 | - $this->_set_paging( $WP_Query ); |
|
302 | + $this->_set_paging($WP_Query); |
|
303 | 303 | |
304 | 304 | // is a taxonomy set ? |
305 | - if ( $WP_Query->is_tax ) { |
|
305 | + if ($WP_Query->is_tax) { |
|
306 | 306 | // loop thru our taxonomies |
307 | - foreach ( $this->_CPT_taxonomies as $CPT_taxonomy => $CPT_taxonomy_details ) { |
|
307 | + foreach ($this->_CPT_taxonomies as $CPT_taxonomy => $CPT_taxonomy_details) { |
|
308 | 308 | // check if one of our taxonomies is set as a query var |
309 | - if ( isset( $WP_Query->query[ $CPT_taxonomy ] )) { |
|
309 | + if (isset($WP_Query->query[$CPT_taxonomy])) { |
|
310 | 310 | // but which CPT does that correspond to??? hmmm... guess we gotta go looping |
311 | - foreach ( $this->_CPTs as $post_type => $CPT ) { |
|
311 | + foreach ($this->_CPTs as $post_type => $CPT) { |
|
312 | 312 | // verify our CPT has args, is public and has taxonomies set |
313 | - if ( isset( $CPT['args'] ) && $CPT['args']['public'] && ! empty( $CPT['args']['taxonomies'] )) { |
|
313 | + if (isset($CPT['args']) && $CPT['args']['public'] && ! empty($CPT['args']['taxonomies'])) { |
|
314 | 314 | // does the captured taxonomy belong to this CPT ? |
315 | - if ( in_array( $CPT_taxonomy, $CPT['args']['taxonomies'] )) { |
|
315 | + if (in_array($CPT_taxonomy, $CPT['args']['taxonomies'])) { |
|
316 | 316 | // if so, then add this CPT post_type to the current query's array of post_types' |
317 | - $WP_Query->query_vars['post_type'] = isset( $WP_Query->query_vars['post_type'] ) ? (array)$WP_Query->query_vars['post_type'] : array(); |
|
317 | + $WP_Query->query_vars['post_type'] = isset($WP_Query->query_vars['post_type']) ? (array) $WP_Query->query_vars['post_type'] : array(); |
|
318 | 318 | $WP_Query->query_vars['post_type'][] = $post_type; |
319 | - switch( $post_type ) { |
|
319 | + switch ($post_type) { |
|
320 | 320 | case 'espresso_events' : |
321 | 321 | $WP_Query->is_espresso_event_taxonomy = TRUE; |
322 | 322 | break; |
@@ -337,27 +337,27 @@ discard block |
||
337 | 337 | // d( $CPT_taxonomy ); |
338 | 338 | // d( $WP_Query ); |
339 | 339 | |
340 | - if ( isset( $WP_Query->query_vars['post_type'] )) { |
|
340 | + if (isset($WP_Query->query_vars['post_type'])) { |
|
341 | 341 | // loop thru post_types as array |
342 | - foreach ( (array)$WP_Query->query_vars['post_type'] as $post_type ) { |
|
342 | + foreach ((array) $WP_Query->query_vars['post_type'] as $post_type) { |
|
343 | 343 | |
344 | 344 | // is current query for an EE CPT ? |
345 | - if ( isset( $this->_CPTs[ $post_type ] )) { |
|
345 | + if (isset($this->_CPTs[$post_type])) { |
|
346 | 346 | // is EE on or off ? |
347 | - if ( EE_Maintenance_Mode::instance()->level() ) { |
|
347 | + if (EE_Maintenance_Mode::instance()->level()) { |
|
348 | 348 | // reroute CPT template view to maintenance_mode.template.php |
349 | - if( ! has_filter( 'template_include',array( 'EE_Maintenance_Mode', 'template_include' ))){ |
|
350 | - add_filter( 'template_include', array( 'EE_Maintenance_Mode', 'template_include' ), 99999 ); |
|
349 | + if ( ! has_filter('template_include', array('EE_Maintenance_Mode', 'template_include'))) { |
|
350 | + add_filter('template_include', array('EE_Maintenance_Mode', 'template_include'), 99999); |
|
351 | 351 | } |
352 | - if( has_filter( 'the_content',array( EE_Maintenance_Mode::instance(), 'the_content' ) ) ) { |
|
353 | - add_filter( 'the_content', array( $this, 'inject_EE_shortcode_placeholder' ), 1 ); |
|
352 | + if (has_filter('the_content', array(EE_Maintenance_Mode::instance(), 'the_content'))) { |
|
353 | + add_filter('the_content', array($this, 'inject_EE_shortcode_placeholder'), 1); |
|
354 | 354 | } |
355 | 355 | return; |
356 | 356 | } |
357 | 357 | // load EE_Request_Handler (this was added as a result of https://events.codebasehq.com/projects/event-espresso/tickets/9037 |
358 | - EE_Registry::instance()->load_core( 'Request_Handler' ); |
|
358 | + EE_Registry::instance()->load_core('Request_Handler'); |
|
359 | 359 | // grab details for the CPT the current query is for |
360 | - $this->CPT = $this->_CPTs[ $post_type ]; |
|
360 | + $this->CPT = $this->_CPTs[$post_type]; |
|
361 | 361 | // set post type |
362 | 362 | $this->CPT['post_type'] = $post_type; |
363 | 363 | // set taxonomies |
@@ -365,27 +365,27 @@ discard block |
||
365 | 365 | // the post or category or term that is triggering EE |
366 | 366 | $this->CPT['espresso_page'] = EE_Registry::instance()->REQ->is_espresso_page(); |
367 | 367 | // requested post name |
368 | - $this->CPT['post_name'] = EE_Registry::instance()->REQ->get( 'post_name' ); |
|
368 | + $this->CPT['post_name'] = EE_Registry::instance()->REQ->get('post_name'); |
|
369 | 369 | //d( $this->CPT ); |
370 | 370 | // add support for viewing 'private', 'draft', or 'pending' posts |
371 | - if ( is_user_logged_in() && isset( $WP_Query->query_vars['p'] ) && $WP_Query->query_vars['p'] != 0 && current_user_can( 'edit_post', $WP_Query->query_vars['p'] )) { |
|
371 | + if (is_user_logged_in() && isset($WP_Query->query_vars['p']) && $WP_Query->query_vars['p'] != 0 && current_user_can('edit_post', $WP_Query->query_vars['p'])) { |
|
372 | 372 | // we can just inject directly into the WP_Query object |
373 | - $WP_Query->query['post_status'] = array( 'publish', 'private', 'draft', 'pending' ); |
|
373 | + $WP_Query->query['post_status'] = array('publish', 'private', 'draft', 'pending'); |
|
374 | 374 | // now set the main 'ee' request var so that the appropriate module can load the appropriate template(s) |
375 | - EE_Registry::instance()->REQ->set( 'ee', $this->CPT['singular_slug'] ); |
|
375 | + EE_Registry::instance()->REQ->set('ee', $this->CPT['singular_slug']); |
|
376 | 376 | } |
377 | 377 | $this->_possibly_set_ee_request_var(); |
378 | 378 | // convert post_type to model name |
379 | - $model_name = str_replace( 'EE_', '', $this->CPT['class_name'] ); |
|
379 | + $model_name = str_replace('EE_', '', $this->CPT['class_name']); |
|
380 | 380 | // get CPT table data via CPT Model |
381 | - $this->CPT_model = EE_Registry::instance()->load_model( $model_name ); |
|
381 | + $this->CPT_model = EE_Registry::instance()->load_model($model_name); |
|
382 | 382 | $this->CPT['tables'] = $this->CPT_model->get_tables(); |
383 | 383 | // is there a Meta Table for this CPT? |
384 | - $this->CPT['meta_table'] = isset( $this->CPT['tables'][ $model_name . '_Meta' ] ) ? $this->CPT['tables'][ $model_name . '_Meta' ] : FALSE; |
|
384 | + $this->CPT['meta_table'] = isset($this->CPT['tables'][$model_name.'_Meta']) ? $this->CPT['tables'][$model_name.'_Meta'] : FALSE; |
|
385 | 385 | // creates classname like: CPT_Event_Strategy |
386 | - $CPT_Strategy_class_name = 'CPT_' . $model_name . '_Strategy'; |
|
386 | + $CPT_Strategy_class_name = 'CPT_'.$model_name.'_Strategy'; |
|
387 | 387 | // load and instantiate |
388 | - $CPT_Strategy = EE_Registry::instance()->load_core ( $CPT_Strategy_class_name, array( 'WP_Query' => $WP_Query, 'CPT' => $this->CPT )); |
|
388 | + $CPT_Strategy = EE_Registry::instance()->load_core($CPT_Strategy_class_name, array('WP_Query' => $WP_Query, 'CPT' => $this->CPT)); |
|
389 | 389 | |
390 | 390 | // !!!!!!!!!! IMPORTANT !!!!!!!!!!!! |
391 | 391 | // here's the list of available filters in the WP_Query object |
@@ -397,13 +397,13 @@ discard block |
||
397 | 397 | // 'post_limits' |
398 | 398 | // 'posts_fields' |
399 | 399 | // 'posts_join' |
400 | - add_filter( 'posts_fields', array( $this, 'posts_fields' )); |
|
401 | - add_filter( 'posts_join', array( $this, 'posts_join' )); |
|
402 | - add_filter( 'get_' . $this->CPT['post_type'] . '_metadata', array( $CPT_Strategy, 'get_EE_post_type_metadata' ), 1, 4 ); |
|
403 | - add_filter( 'the_posts', array( $this, 'the_posts' ), 1, 1 ); |
|
404 | - add_filter( 'get_edit_post_link', array( $this, 'get_edit_post_link' ), 10, 2 ); |
|
400 | + add_filter('posts_fields', array($this, 'posts_fields')); |
|
401 | + add_filter('posts_join', array($this, 'posts_join')); |
|
402 | + add_filter('get_'.$this->CPT['post_type'].'_metadata', array($CPT_Strategy, 'get_EE_post_type_metadata'), 1, 4); |
|
403 | + add_filter('the_posts', array($this, 'the_posts'), 1, 1); |
|
404 | + add_filter('get_edit_post_link', array($this, 'get_edit_post_link'), 10, 2); |
|
405 | 405 | |
406 | - $this->_do_template_filters( $WP_Query ); |
|
406 | + $this->_do_template_filters($WP_Query); |
|
407 | 407 | } |
408 | 408 | } |
409 | 409 | } |
@@ -418,13 +418,13 @@ discard block |
||
418 | 418 | * @param $SQL |
419 | 419 | * @return string |
420 | 420 | */ |
421 | - public function posts_fields( $SQL ) { |
|
421 | + public function posts_fields($SQL) { |
|
422 | 422 | // does this CPT have a meta table ? |
423 | - if ( ! empty( $this->CPT['meta_table'] )) { |
|
423 | + if ( ! empty($this->CPT['meta_table'])) { |
|
424 | 424 | // adds something like ", wp_esp_event_meta.* " to WP Query SELECT statement |
425 | - $SQL .= ', ' . $this->CPT['meta_table']->get_table_name() . '.* ' ; |
|
425 | + $SQL .= ', '.$this->CPT['meta_table']->get_table_name().'.* '; |
|
426 | 426 | } |
427 | - remove_filter( 'posts_fields', array( $this, 'posts_fields' )); |
|
427 | + remove_filter('posts_fields', array($this, 'posts_fields')); |
|
428 | 428 | return $SQL; |
429 | 429 | } |
430 | 430 | |
@@ -452,14 +452,14 @@ discard block |
||
452 | 452 | * @param $SQL |
453 | 453 | * @return string |
454 | 454 | */ |
455 | - public function posts_join( $SQL ) { |
|
455 | + public function posts_join($SQL) { |
|
456 | 456 | // does this CPT have a meta table ? |
457 | - if ( ! empty( $this->CPT['meta_table'] )) { |
|
457 | + if ( ! empty($this->CPT['meta_table'])) { |
|
458 | 458 | global $wpdb; |
459 | 459 | // adds something like " LEFT JOIN wp_esp_event_meta ON ( wp_esp_event_meta.EVT_ID = wp_posts.ID ) " to WP Query JOIN statement |
460 | - $SQL .= ' LEFT JOIN ' . $this->CPT['meta_table']->get_table_name() . ' ON ( ' . $this->CPT['meta_table']->get_table_name() . '.' . $this->CPT['meta_table']->get_fk_on_table() . ' = ' . $wpdb->posts . '.ID ) '; |
|
460 | + $SQL .= ' LEFT JOIN '.$this->CPT['meta_table']->get_table_name().' ON ( '.$this->CPT['meta_table']->get_table_name().'.'.$this->CPT['meta_table']->get_fk_on_table().' = '.$wpdb->posts.'.ID ) '; |
|
461 | 461 | } |
462 | - remove_filter( 'posts_join', array( $this, 'posts_join' )); |
|
462 | + remove_filter('posts_join', array($this, 'posts_join')); |
|
463 | 463 | return $SQL; |
464 | 464 | } |
465 | 465 | |
@@ -472,18 +472,18 @@ discard block |
||
472 | 472 | * @param \WP_Post[] $posts |
473 | 473 | * @return \WP_Post[] |
474 | 474 | */ |
475 | - public function the_posts( $posts ) { |
|
475 | + public function the_posts($posts) { |
|
476 | 476 | // d( $posts ); |
477 | 477 | $CPT_class = $this->CPT['class_name']; |
478 | 478 | // loop thru posts |
479 | - if ( is_array( $posts )) { |
|
480 | - foreach( $posts as $key => $post ) { |
|
481 | - if ( isset( $this->_CPTs[ $post->post_type ] )) { |
|
482 | - $post->{$CPT_class} = $this->CPT_model->instantiate_class_from_post_object( $post ); |
|
479 | + if (is_array($posts)) { |
|
480 | + foreach ($posts as $key => $post) { |
|
481 | + if (isset($this->_CPTs[$post->post_type])) { |
|
482 | + $post->{$CPT_class} = $this->CPT_model->instantiate_class_from_post_object($post); |
|
483 | 483 | } |
484 | 484 | } |
485 | 485 | } |
486 | - remove_filter( 'the_posts', array( $this, 'the_posts' ), 1 ); |
|
486 | + remove_filter('the_posts', array($this, 'the_posts'), 1); |
|
487 | 487 | return $posts; |
488 | 488 | } |
489 | 489 | |
@@ -494,17 +494,17 @@ discard block |
||
494 | 494 | * @param $ID |
495 | 495 | * @return string |
496 | 496 | */ |
497 | - function get_edit_post_link( $url, $ID ) { |
|
497 | + function get_edit_post_link($url, $ID) { |
|
498 | 498 | //need to make sure we only edit links if our cpt |
499 | 499 | global $post; |
500 | - if ( ! isset( $this->_CPTs[ $post->post_type ] )) { |
|
500 | + if ( ! isset($this->_CPTs[$post->post_type])) { |
|
501 | 501 | return $url; |
502 | 502 | } |
503 | 503 | //k made it here so all is good. |
504 | 504 | $scheme = is_ssl() ? 'https' : 'http'; |
505 | - $url = get_admin_url( EE_Config::instance()->core->current_blog_id, 'admin.php', $scheme ); |
|
505 | + $url = get_admin_url(EE_Config::instance()->core->current_blog_id, 'admin.php', $scheme); |
|
506 | 506 | // http://example.com/wp-admin/admin.php?page=espresso_events&action=edit&post=205&edit_nonce=0d403530d6 |
507 | - return wp_nonce_url( add_query_arg( array( 'page' => $post->post_type, 'post' =>$ID, 'action' =>'edit' ), $url ), 'edit', 'edit_nonce' ); |
|
507 | + return wp_nonce_url(add_query_arg(array('page' => $post->post_type, 'post' =>$ID, 'action' =>'edit'), $url), 'edit', 'edit_nonce'); |
|
508 | 508 | } |
509 | 509 | |
510 | 510 | |
@@ -518,11 +518,11 @@ discard block |
||
518 | 518 | * @param WP_Query $WP_Query |
519 | 519 | * @return void |
520 | 520 | */ |
521 | - protected function _do_template_filters( WP_Query $WP_Query ) { |
|
521 | + protected function _do_template_filters(WP_Query $WP_Query) { |
|
522 | 522 | // if it's the main query and requested cpt supports page_templates, |
523 | - if ( $WP_Query->is_main_query() && ! empty( $this->CPT['args']['page_templates'] ) ) { |
|
523 | + if ($WP_Query->is_main_query() && ! empty($this->CPT['args']['page_templates'])) { |
|
524 | 524 | // then let's hook into the appropriate query_template hook |
525 | - add_filter( 'single_template', array( $this, 'single_cpt_template' ) ); |
|
525 | + add_filter('single_template', array($this, 'single_cpt_template')); |
|
526 | 526 | } |
527 | 527 | } |
528 | 528 | |
@@ -536,17 +536,17 @@ discard block |
||
536 | 536 | * @param string $current_template Existing default template path derived for this page call. |
537 | 537 | * @return string the path to the full template file. |
538 | 538 | */ |
539 | - public function single_cpt_template( $current_template ) { |
|
539 | + public function single_cpt_template($current_template) { |
|
540 | 540 | $object = get_queried_object(); |
541 | 541 | //does this called object HAVE a page template set that is something other than the default. |
542 | - $template = get_post_meta( $object->ID, '_wp_page_template', true ); |
|
542 | + $template = get_post_meta($object->ID, '_wp_page_template', true); |
|
543 | 543 | |
544 | 544 | //exit early if default or not set or invalid path (accounts for theme changes) |
545 | - if ( $template == 'default' || empty( $template ) || ! is_readable( get_stylesheet_directory() . '/' . $template ) ) { |
|
545 | + if ($template == 'default' || empty($template) || ! is_readable(get_stylesheet_directory().'/'.$template)) { |
|
546 | 546 | return $current_template; |
547 | 547 | } |
548 | 548 | //made it here so we SHOULD be able to just locate the template and then return it. |
549 | - $template = locate_template( array($template) ); |
|
549 | + $template = locate_template(array($template)); |
|
550 | 550 | |
551 | 551 | return $template; |
552 | 552 | } |
@@ -594,9 +594,9 @@ discard block |
||
594 | 594 | * @param array $arguments |
595 | 595 | * @return \EE_CPT_Default_Strategy |
596 | 596 | */ |
597 | - public function __construct( $arguments = array() ) { |
|
598 | - $this->CPT = isset( $arguments['CPT'] ) ? $arguments['CPT'] : NULL; |
|
599 | - $WP_Query = isset( $arguments['WP_Query'] ) ? $arguments['WP_Query'] : NULL; |
|
597 | + public function __construct($arguments = array()) { |
|
598 | + $this->CPT = isset($arguments['CPT']) ? $arguments['CPT'] : NULL; |
|
599 | + $WP_Query = isset($arguments['WP_Query']) ? $arguments['WP_Query'] : NULL; |
|
600 | 600 | //EEH_Debug_Tools::printr( $this->CPT, '$this->CPT <br /><span style="font-size:10px;font-weight:normal;">' . __FILE__ . '<br />line no: ' . __LINE__ . '</span>', 'auto' ); |
601 | 601 | // add_filter( 'pre_get_posts', array( $this, 'pre_get_posts' ), 999 ); |
602 | 602 | // add_filter( 'the_posts', array( $this, 'the_posts' ), 1, 2 ); |
@@ -611,9 +611,9 @@ discard block |
||
611 | 611 | * @param \WP_Query $WP_Query |
612 | 612 | * @return \WP_Query |
613 | 613 | */ |
614 | - public function pre_get_posts( WP_Query $WP_Query ) { |
|
614 | + public function pre_get_posts(WP_Query $WP_Query) { |
|
615 | 615 | //EEH_Debug_Tools::printr( $WP_Query, '$WP_Query <br /><span style="font-size:10px;font-weight:normal;">' . __FILE__ . '<br />line no: ' . __LINE__ . '</span>', 'auto' ); |
616 | - if ( ! $WP_Query->is_main_query() && ! $WP_Query->is_archive() ) { |
|
616 | + if ( ! $WP_Query->is_main_query() && ! $WP_Query->is_archive()) { |
|
617 | 617 | return $WP_Query; |
618 | 618 | } |
619 | 619 | // $WP_Query->set( 'post_type', array( $this->CPT['post_type'] )); |
@@ -631,7 +631,7 @@ discard block |
||
631 | 631 | * @param \WP_Query $WP_Query |
632 | 632 | * @return \WP_Post[] |
633 | 633 | */ |
634 | - public function the_posts( $posts, WP_Query $WP_Query ) { |
|
634 | + public function the_posts($posts, WP_Query $WP_Query) { |
|
635 | 635 | return $posts; |
636 | 636 | } |
637 | 637 | |
@@ -647,7 +647,7 @@ discard block |
||
647 | 647 | * @param string $single |
648 | 648 | * @return mixed |
649 | 649 | */ |
650 | - public function get_EE_post_type_metadata( $meta_value = NULL, $post_id, $meta_key, $single ) { |
|
650 | + public function get_EE_post_type_metadata($meta_value = NULL, $post_id, $meta_key, $single) { |
|
651 | 651 | return $meta_value; |
652 | 652 | } |
653 | 653 |
@@ -23,37 +23,37 @@ discard block |
||
23 | 23 | * constructor |
24 | 24 | * instantiated at init priority 5 |
25 | 25 | */ |
26 | - function __construct(){ |
|
26 | + function __construct() { |
|
27 | 27 | // register taxonomies |
28 | 28 | $taxonomies = self::get_taxonomies(); |
29 | - foreach ( $taxonomies as $taxonomy => $tax ) { |
|
30 | - $this->register_taxonomy( $taxonomy, $tax['singular_name'], $tax['plural_name'], $tax['args'] ); |
|
29 | + foreach ($taxonomies as $taxonomy => $tax) { |
|
30 | + $this->register_taxonomy($taxonomy, $tax['singular_name'], $tax['plural_name'], $tax['args']); |
|
31 | 31 | } |
32 | 32 | // register CPTs |
33 | - $CPTs =self::get_CPTs(); |
|
34 | - foreach ( $CPTs as $CPT_name => $CPT ) { |
|
35 | - $this->register_CPT( $CPT_name, $CPT['singular_name'], $CPT['plural_name'], $CPT['args'], $CPT['singular_slug'], $CPT['plural_slug'] ); |
|
33 | + $CPTs = self::get_CPTs(); |
|
34 | + foreach ($CPTs as $CPT_name => $CPT) { |
|
35 | + $this->register_CPT($CPT_name, $CPT['singular_name'], $CPT['plural_name'], $CPT['args'], $CPT['singular_slug'], $CPT['plural_slug']); |
|
36 | 36 | } |
37 | 37 | // setup default terms in any of our taxonomies (but only if we're in admin). |
38 | 38 | // Why not added via register_activation_hook? |
39 | 39 | // Because it's possible that in future iterations of EE we may add new defaults for specialized taxonomies (think event_types) and register_activation_hook only reliably runs when a user manually activates the plugin. |
40 | 40 | // Keep in mind that this will READ these terms if they are deleted by the user. Hence MUST use terms. |
41 | - if ( is_admin() ) { |
|
41 | + if (is_admin()) { |
|
42 | 42 | $this->set_must_use_event_types(); |
43 | 43 | } |
44 | 44 | //set default terms |
45 | - $this->set_default_term( 'espresso_event_type', 'single-event', array('espresso_events') ); |
|
45 | + $this->set_default_term('espresso_event_type', 'single-event', array('espresso_events')); |
|
46 | 46 | |
47 | 47 | |
48 | - add_action( 'AHEE__EE_System__initialize_last', array( __CLASS__, 'maybe_flush_rewrite_rules' ), 10 ); |
|
48 | + add_action('AHEE__EE_System__initialize_last', array(__CLASS__, 'maybe_flush_rewrite_rules'), 10); |
|
49 | 49 | |
50 | 50 | //hook into save_post so that we can make sure that the default terms get saved on publish of registered cpts IF they don't have a term for that taxonomy set. |
51 | - add_action('save_post', array( $this, 'save_default_term' ), 100, 2 ); |
|
51 | + add_action('save_post', array($this, 'save_default_term'), 100, 2); |
|
52 | 52 | |
53 | 53 | //remove no html restrictions from core wp saving of term descriptions. Note. this will affect only registered EE taxonomies. |
54 | 54 | $this->_allow_html_descriptions_for_ee_taxonomies(); |
55 | 55 | |
56 | - do_action( 'AHEE__EE_Register_CPTs__construct_end', $this ); |
|
56 | + do_action('AHEE__EE_Register_CPTs__construct_end', $this); |
|
57 | 57 | } |
58 | 58 | |
59 | 59 | |
@@ -66,9 +66,9 @@ discard block |
||
66 | 66 | * @return void |
67 | 67 | */ |
68 | 68 | public static function maybe_flush_rewrite_rules() { |
69 | - if ( get_option( 'ee_flush_rewrite_rules', TRUE )) { |
|
69 | + if (get_option('ee_flush_rewrite_rules', TRUE)) { |
|
70 | 70 | flush_rewrite_rules(); |
71 | - update_option( 'ee_flush_rewrite_rules', FALSE ); |
|
71 | + update_option('ee_flush_rewrite_rules', FALSE); |
|
72 | 72 | } |
73 | 73 | } |
74 | 74 | |
@@ -83,7 +83,7 @@ discard block |
||
83 | 83 | protected function _allow_html_descriptions_for_ee_taxonomies() { |
84 | 84 | //first remove default filter for term description but we have to do this earlier before wp sets their own filter |
85 | 85 | //because they just set a global filter on all term descriptions before the custom term description filter. Really sux. |
86 | - add_filter( 'pre_term_description', array( $this, 'ee_filter_ee_term_description_not_wp' ), 1, 2 ); |
|
86 | + add_filter('pre_term_description', array($this, 'ee_filter_ee_term_description_not_wp'), 1, 2); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | |
@@ -93,16 +93,16 @@ discard block |
||
93 | 93 | * @param string $taxonomy The taxonomy name for the taxonomy being filtered. |
94 | 94 | * @return string |
95 | 95 | */ |
96 | - public function ee_filter_ee_term_description_not_wp( $description, $taxonomy ) { |
|
96 | + public function ee_filter_ee_term_description_not_wp($description, $taxonomy) { |
|
97 | 97 | //get a list of EE taxonomies |
98 | - $ee_taxonomies = array_keys( self::get_taxonomies() ); |
|
98 | + $ee_taxonomies = array_keys(self::get_taxonomies()); |
|
99 | 99 | |
100 | 100 | //only do our own thing if the taxonomy listed is an ee taxonomy. |
101 | - if ( in_array( $taxonomy, $ee_taxonomies ) ) { |
|
101 | + if (in_array($taxonomy, $ee_taxonomies)) { |
|
102 | 102 | //remove default wp filter |
103 | - remove_filter( 'pre_term_description', 'wp_filter_kses' ); |
|
103 | + remove_filter('pre_term_description', 'wp_filter_kses'); |
|
104 | 104 | //sanitize THIS content. |
105 | - $description = wp_kses( $description, wp_kses_allowed_html( 'post' ) ); |
|
105 | + $description = wp_kses($description, wp_kses_allowed_html('post')); |
|
106 | 106 | } |
107 | 107 | return $description; |
108 | 108 | } |
@@ -116,9 +116,9 @@ discard block |
||
116 | 116 | * @access public |
117 | 117 | * @return array |
118 | 118 | */ |
119 | - public static function get_taxonomies(){ |
|
119 | + public static function get_taxonomies() { |
|
120 | 120 | // define taxonomies |
121 | - return apply_filters( 'FHEE__EE_Register_CPTs__get_taxonomies__taxonomies', array( |
|
121 | + return apply_filters('FHEE__EE_Register_CPTs__get_taxonomies__taxonomies', array( |
|
122 | 122 | 'espresso_event_categories' => array( |
123 | 123 | 'singular_name' => __("Event Category", "event_espresso"), |
124 | 124 | 'plural_name' => __("Event Categories", "event_espresso"), |
@@ -131,7 +131,7 @@ discard block |
||
131 | 131 | 'delete_terms' => 'ee_delete_event_category', |
132 | 132 | 'assign_terms' => 'ee_assign_event_category' |
133 | 133 | ), |
134 | - 'rewrite' => array( 'slug' => __( 'event-category', 'event_espresso' )) |
|
134 | + 'rewrite' => array('slug' => __('event-category', 'event_espresso')) |
|
135 | 135 | )), |
136 | 136 | 'espresso_venue_categories' => array( |
137 | 137 | 'singular_name' => __("Venue Category", "event_espresso"), |
@@ -145,7 +145,7 @@ discard block |
||
145 | 145 | 'delete_terms' => 'ee_delete_venue_category', |
146 | 146 | 'assign_terms' => 'ee_assign_venue_category' |
147 | 147 | ), |
148 | - 'rewrite' => array( 'slug' => __( 'venue-category', 'event_espresso' )) |
|
148 | + 'rewrite' => array('slug' => __('venue-category', 'event_espresso')) |
|
149 | 149 | )), |
150 | 150 | 'espresso_event_type' => array( |
151 | 151 | 'singular_name' => __("Event Type", "event_espresso"), |
@@ -159,10 +159,10 @@ discard block |
||
159 | 159 | 'delete_terms' => 'ee_delete_event_type', |
160 | 160 | 'assign_terms' => 'ee_assign_event_type' |
161 | 161 | ), |
162 | - 'rewrite' => array( 'slug' => __( 'event-type', 'event_espresso' )), |
|
162 | + 'rewrite' => array('slug' => __('event-type', 'event_espresso')), |
|
163 | 163 | 'hierarchical'=>true |
164 | 164 | )) |
165 | - ) ); |
|
165 | + )); |
|
166 | 166 | } |
167 | 167 | |
168 | 168 | |
@@ -180,26 +180,26 @@ discard block |
||
180 | 180 | * @return array Empty array if no matching model names for the given slug or an array of model |
181 | 181 | * names indexed by post type slug. |
182 | 182 | */ |
183 | - public static function get_cpt_model_names( $post_type_slug = '' ) { |
|
183 | + public static function get_cpt_model_names($post_type_slug = '') { |
|
184 | 184 | $cpts = self::get_CPTs(); |
185 | 185 | |
186 | 186 | //first if slug passed in... |
187 | - if ( ! empty( $post_type_slug ) ) { |
|
187 | + if ( ! empty($post_type_slug)) { |
|
188 | 188 | //match? |
189 | - if ( ! isset( $cpts[$post_type_slug] ) || ( isset( $cpts[$post_type_slug] ) && empty( $cpts[$post_type_slug]['class_name'] ) ) ) { |
|
189 | + if ( ! isset($cpts[$post_type_slug]) || (isset($cpts[$post_type_slug]) && empty($cpts[$post_type_slug]['class_name']))) { |
|
190 | 190 | return array(); |
191 | 191 | } |
192 | 192 | |
193 | 193 | //k let's get the model name for this cpt. |
194 | - return array( $post_type_slug => str_replace( 'EE', 'EEM', $cpts[$post_type_slug]['class_name'] ) ); |
|
194 | + return array($post_type_slug => str_replace('EE', 'EEM', $cpts[$post_type_slug]['class_name'])); |
|
195 | 195 | } |
196 | 196 | |
197 | 197 | |
198 | 198 | //if we made it here then we're returning an array of cpt model names indexed by post_type_slug. |
199 | 199 | $cpt_models = array(); |
200 | - foreach ( $cpts as $slug => $args ) { |
|
201 | - if ( ! empty( $args['class_name'] ) ) { |
|
202 | - $cpt_models[$slug] = str_replace( 'EE', 'EEM', $args['class_name'] ); |
|
200 | + foreach ($cpts as $slug => $args) { |
|
201 | + if ( ! empty($args['class_name'])) { |
|
202 | + $cpt_models[$slug] = str_replace('EE', 'EEM', $args['class_name']); |
|
203 | 203 | } |
204 | 204 | } |
205 | 205 | return $cpt_models; |
@@ -220,12 +220,12 @@ discard block |
||
220 | 220 | * @return EEM_CPT_Base[] successful instantiation will return an array of successfully instantiated EEM |
221 | 221 | * models indexed by post slug. |
222 | 222 | */ |
223 | - public static function instantiate_cpt_models( $post_type_slug = '' ) { |
|
224 | - $cpt_model_names = self::get_cpt_model_names( $post_type_slug ); |
|
223 | + public static function instantiate_cpt_models($post_type_slug = '') { |
|
224 | + $cpt_model_names = self::get_cpt_model_names($post_type_slug); |
|
225 | 225 | $instantiated = array(); |
226 | - foreach ( $cpt_model_names as $slug => $model_name ) { |
|
227 | - $instance = EE_Registry::instance()->load_model( str_replace( 'EEM_', '', $model_name ) ); |
|
228 | - if ( $instance instanceof EEM_CPT_Base ) { |
|
226 | + foreach ($cpt_model_names as $slug => $model_name) { |
|
227 | + $instance = EE_Registry::instance()->load_model(str_replace('EEM_', '', $model_name)); |
|
228 | + if ($instance instanceof EEM_CPT_Base) { |
|
229 | 229 | $instantiated[$slug] = $instance; |
230 | 230 | } |
231 | 231 | } |
@@ -242,10 +242,10 @@ discard block |
||
242 | 242 | * @access public |
243 | 243 | * @return array |
244 | 244 | */ |
245 | - public static function get_CPTs(){ |
|
245 | + public static function get_CPTs() { |
|
246 | 246 | // define CPTs |
247 | 247 | // NOTE the ['args']['page_templates'] array index is something specific to our CPTs and not part of the WP custom post type api. |
248 | - return apply_filters( 'FHEE__EE_Register_CPTs__get_CPTs__cpts', array( |
|
248 | + return apply_filters('FHEE__EE_Register_CPTs__get_CPTs__cpts', array( |
|
249 | 249 | 'espresso_events' => array( |
250 | 250 | 'singular_name' => __("Event", "event_espresso"), |
251 | 251 | 'plural_name' => __("Events", "event_espresso"), |
@@ -320,7 +320,7 @@ discard block |
||
320 | 320 | 'publicly_queryable'=> FALSE, |
321 | 321 | 'hierarchical'=> FALSE, |
322 | 322 | 'has_archive' => FALSE, |
323 | - 'taxonomies' => array( 'post_tag' ), |
|
323 | + 'taxonomies' => array('post_tag'), |
|
324 | 324 | 'capability_type' => 'contact', |
325 | 325 | 'capabilities' => array( |
326 | 326 | 'edit_post' => 'ee_edit_contact', |
@@ -337,9 +337,9 @@ discard block |
||
337 | 337 | 'edit_private_posts' => 'ee_edit_contacts', |
338 | 338 | 'edit_published_posts' => 'ee_edit_contacts' |
339 | 339 | ), |
340 | - 'supports' => array( 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'comments' ), |
|
340 | + 'supports' => array('editor', 'thumbnail', 'excerpt', 'custom-fields', 'comments'), |
|
341 | 341 | )) |
342 | - ) ); |
|
342 | + )); |
|
343 | 343 | } |
344 | 344 | |
345 | 345 | |
@@ -352,9 +352,9 @@ discard block |
||
352 | 352 | public static function get_private_CPTs() { |
353 | 353 | $CPTs = self::get_CPTs(); |
354 | 354 | $private_CPTs = array(); |
355 | - foreach ( $CPTs as $CPT => $details ) { |
|
356 | - if ( empty( $details['args']['public'] ) ) |
|
357 | - $private_CPTs[ $CPT ] = $details; |
|
355 | + foreach ($CPTs as $CPT => $details) { |
|
356 | + if (empty($details['args']['public'])) |
|
357 | + $private_CPTs[$CPT] = $details; |
|
358 | 358 | } |
359 | 359 | return $private_CPTs; |
360 | 360 | } |
@@ -372,7 +372,7 @@ discard block |
||
372 | 372 | * @param string $plural_name internationalized plural name |
373 | 373 | * @param array $override_args like $args on http://codex.wordpress.org/Function_Reference/register_taxonomy |
374 | 374 | */ |
375 | - function register_taxonomy( $taxonomy_name, $singular_name, $plural_name, $override_args = array() ){ |
|
375 | + function register_taxonomy($taxonomy_name, $singular_name, $plural_name, $override_args = array()) { |
|
376 | 376 | |
377 | 377 | $args = array( |
378 | 378 | 'hierarchical' => true, |
@@ -388,15 +388,15 @@ discard block |
||
388 | 388 | //'rewrite' => array( 'slug' => 'genre' ), |
389 | 389 | ); |
390 | 390 | |
391 | - if($override_args){ |
|
392 | - if(isset($override_args['labels'])){ |
|
393 | - $labels = array_merge($args['labels'],$override_args['labels']); |
|
391 | + if ($override_args) { |
|
392 | + if (isset($override_args['labels'])) { |
|
393 | + $labels = array_merge($args['labels'], $override_args['labels']); |
|
394 | 394 | $args['labels'] = $labels; |
395 | 395 | } |
396 | - $args = array_merge($args,$override_args); |
|
396 | + $args = array_merge($args, $override_args); |
|
397 | 397 | |
398 | 398 | } |
399 | - register_taxonomy($taxonomy_name,null, $args); |
|
399 | + register_taxonomy($taxonomy_name, null, $args); |
|
400 | 400 | } |
401 | 401 | |
402 | 402 | |
@@ -410,27 +410,27 @@ discard block |
||
410 | 410 | * The default values set in this function will be overridden by whatever you set in $override_args |
411 | 411 | * @return void, but registers the custom post type |
412 | 412 | */ |
413 | - function register_CPT($post_type, $singular_name,$plural_name,$override_args = array(), $singular_slug = '', $plural_slug = '' ) { |
|
413 | + function register_CPT($post_type, $singular_name, $plural_name, $override_args = array(), $singular_slug = '', $plural_slug = '') { |
|
414 | 414 | |
415 | 415 | $labels = array( |
416 | 416 | 'name' => $plural_name, |
417 | 417 | 'singular_name' => $singular_name, |
418 | - 'add_new' => sprintf(__("Add %s", "event_espresso"),$singular_name), |
|
419 | - 'add_new_item' => sprintf(__("Add New %s", "event_espresso"),$singular_name), |
|
420 | - 'edit_item' => sprintf(__("Edit %s", "event_espresso"),$singular_name), |
|
421 | - 'new_item' => sprintf(__("New %s", "event_espresso"),$singular_name), |
|
422 | - 'all_items' => sprintf(__("All %s", "event_espresso"),$plural_name), |
|
423 | - 'view_item' => sprintf(__("View %s", "event_espresso"),$singular_name), |
|
424 | - 'search_items' => sprintf(__("Search %s", "event_espresso"),$plural_name), |
|
425 | - 'not_found' => sprintf(__("No %s found", "event_espresso"),$plural_name), |
|
426 | - 'not_found_in_trash' => sprintf(__("No %s found in Trash", "event_espresso"),$plural_name), |
|
418 | + 'add_new' => sprintf(__("Add %s", "event_espresso"), $singular_name), |
|
419 | + 'add_new_item' => sprintf(__("Add New %s", "event_espresso"), $singular_name), |
|
420 | + 'edit_item' => sprintf(__("Edit %s", "event_espresso"), $singular_name), |
|
421 | + 'new_item' => sprintf(__("New %s", "event_espresso"), $singular_name), |
|
422 | + 'all_items' => sprintf(__("All %s", "event_espresso"), $plural_name), |
|
423 | + 'view_item' => sprintf(__("View %s", "event_espresso"), $singular_name), |
|
424 | + 'search_items' => sprintf(__("Search %s", "event_espresso"), $plural_name), |
|
425 | + 'not_found' => sprintf(__("No %s found", "event_espresso"), $plural_name), |
|
426 | + 'not_found_in_trash' => sprintf(__("No %s found in Trash", "event_espresso"), $plural_name), |
|
427 | 427 | 'parent_item_colon' => '', |
428 | - 'menu_name' => sprintf(__("%s", "event_espresso"),$plural_name) |
|
428 | + 'menu_name' => sprintf(__("%s", "event_espresso"), $plural_name) |
|
429 | 429 | ); |
430 | 430 | |
431 | 431 | //verify plural slug and singular slug, if they aren't we'll use $singular_name and $plural_name |
432 | - $singular_slug = ! empty( $singular_slug ) ? $singular_slug : $singular_name; |
|
433 | - $plural_slug = ! empty( $plural_slug ) ? $plural_slug : $plural_name; |
|
432 | + $singular_slug = ! empty($singular_slug) ? $singular_slug : $singular_name; |
|
433 | + $plural_slug = ! empty($plural_slug) ? $plural_slug : $plural_name; |
|
434 | 434 | |
435 | 435 | |
436 | 436 | //note the page_templates arg in the supports index is something specific to EE. WordPress doesn't actually have that in their register_post_type api. |
@@ -442,24 +442,24 @@ discard block |
||
442 | 442 | 'show_in_menu' => false, |
443 | 443 | 'show_in_nav_menus' => false, |
444 | 444 | 'query_var' => true, |
445 | - 'rewrite' => apply_filters( 'FHEE__EE_Register_CPTs__register_CPT__rewrite', array( 'slug' => $plural_slug ), $post_type ), |
|
445 | + 'rewrite' => apply_filters('FHEE__EE_Register_CPTs__register_CPT__rewrite', array('slug' => $plural_slug), $post_type), |
|
446 | 446 | 'capability_type' => 'post', |
447 | 447 | 'map_meta_cap' => true, |
448 | 448 | 'has_archive' => true, |
449 | 449 | 'hierarchical' => true, |
450 | 450 | 'menu_position' => null, |
451 | - 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'custom-fields', 'comments' ) |
|
451 | + 'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'custom-fields', 'comments') |
|
452 | 452 | ); |
453 | 453 | |
454 | - if($override_args){ |
|
455 | - if(isset($override_args['labels'])){ |
|
456 | - $labels = array_merge($args['labels'],$override_args['labels']); |
|
454 | + if ($override_args) { |
|
455 | + if (isset($override_args['labels'])) { |
|
456 | + $labels = array_merge($args['labels'], $override_args['labels']); |
|
457 | 457 | } |
458 | - $args = array_merge($args,$override_args); |
|
458 | + $args = array_merge($args, $override_args); |
|
459 | 459 | $args['labels'] = $labels; |
460 | 460 | } |
461 | 461 | |
462 | - register_post_type( $post_type, $args ); |
|
462 | + register_post_type($post_type, $args); |
|
463 | 463 | } |
464 | 464 | |
465 | 465 | |
@@ -467,15 +467,15 @@ discard block |
||
467 | 467 | |
468 | 468 | function set_must_use_event_types() { |
469 | 469 | $term_details = array( |
470 | - 'single-event' => array( __('Single Event', 'event_espresso'), __('A single event that spans one or more consecutive days. Attendee\'s register for the first date-time only', 'event_espresso') ), //example: a party or two-day long workshop |
|
470 | + 'single-event' => array(__('Single Event', 'event_espresso'), __('A single event that spans one or more consecutive days. Attendee\'s register for the first date-time only', 'event_espresso')), //example: a party or two-day long workshop |
|
471 | 471 | |
472 | - 'multi-event' => array( __('Multi Event', 'event_espresso'), __('Multiple, separate, but related events that occur on consecutive days. Attendee\'s can register for any of the date-times', 'event_espresso') ), //example: a three day music festival or week long conference |
|
472 | + 'multi-event' => array(__('Multi Event', 'event_espresso'), __('Multiple, separate, but related events that occur on consecutive days. Attendee\'s can register for any of the date-times', 'event_espresso')), //example: a three day music festival or week long conference |
|
473 | 473 | |
474 | - 'event-series' => array( __('Event Series', 'event_espresso'), __(' Multiple events that occur over multiple non-consecutive days. Attendee\'s register for the first date-time only', 'event_espresso') ), //example: an 8 week introduction to basket weaving course |
|
474 | + 'event-series' => array(__('Event Series', 'event_espresso'), __(' Multiple events that occur over multiple non-consecutive days. Attendee\'s register for the first date-time only', 'event_espresso')), //example: an 8 week introduction to basket weaving course |
|
475 | 475 | |
476 | - 'recurring-event' => array( __('Recurring Event', 'event_espresso'), __('Multiple events that occur over multiple non-consecutive days. Attendee\'s can register for any of the date-times.', 'event_espresso') ), //example: a yoga class |
|
476 | + 'recurring-event' => array(__('Recurring Event', 'event_espresso'), __('Multiple events that occur over multiple non-consecutive days. Attendee\'s can register for any of the date-times.', 'event_espresso')), //example: a yoga class |
|
477 | 477 | |
478 | - 'ongoing' => array( __('Ongoing Event', 'event_espresso'), __('An "event" that people can purchase tickets to gain access for anytime for this event regardless of date times on the event', 'event_espresso') ) //example: access to a museum |
|
478 | + 'ongoing' => array(__('Ongoing Event', 'event_espresso'), __('An "event" that people can purchase tickets to gain access for anytime for this event regardless of date times on the event', 'event_espresso')) //example: access to a museum |
|
479 | 479 | |
480 | 480 | //'walk-in' => array( __('Walk In', 'event_espresso'), __('Single datetime and single entry recurring events. Attendees register for one or multiple datetimes individually.', 'event_espresso') ), |
481 | 481 | //'reservation' => array( __('Reservation', 'event_espresso'), __('Reservations are created by specifying available datetimes and quantities. Attendees choose from the available datetimes and specify the quantity available (if the maximum is greater than 1)') ), //@TODO to avoid confusion we'll implement this in a later iteration > EE4.1 |
@@ -483,7 +483,7 @@ discard block |
||
483 | 483 | //'appointment' => array( __('Appointments', 'event_espresso'), __('Time slotted events where datetimes are generally in hours or minutes. For example, attendees can register for a single 15 minute or 1 hour time slot and this type of availability frequently reoccurs.', 'event_espresso') ) |
484 | 484 | |
485 | 485 | ); |
486 | - $this->set_must_use_terms( 'espresso_event_type', $term_details ); |
|
486 | + $this->set_must_use_terms('espresso_event_type', $term_details); |
|
487 | 487 | } |
488 | 488 | |
489 | 489 | |
@@ -497,16 +497,16 @@ discard block |
||
497 | 497 | * |
498 | 498 | * @return void |
499 | 499 | */ |
500 | - function set_must_use_terms( $taxonomy, $term_details ) { |
|
500 | + function set_must_use_terms($taxonomy, $term_details) { |
|
501 | 501 | $term_details = (array) $term_details; |
502 | 502 | |
503 | - foreach ( $term_details as $slug => $details ) { |
|
504 | - if ( !term_exists( $slug, $taxonomy ) ) { |
|
503 | + foreach ($term_details as $slug => $details) { |
|
504 | + if ( ! term_exists($slug, $taxonomy)) { |
|
505 | 505 | $insert_arr = array( |
506 | 506 | 'slug' => $slug, |
507 | 507 | 'description' => $details[1] |
508 | 508 | ); |
509 | - wp_insert_term( $details[0], $taxonomy, $insert_arr ); |
|
509 | + wp_insert_term($details[0], $taxonomy, $insert_arr); |
|
510 | 510 | } |
511 | 511 | } |
512 | 512 | } |
@@ -520,8 +520,8 @@ discard block |
||
520 | 520 | * @param string $term_slug The slug of the term that will be the default. |
521 | 521 | * @param array $cpt_slugs An array of custom post types we want the default assigned to |
522 | 522 | */ |
523 | - function set_default_term( $taxonomy, $term_slug, $cpt_slugs = array() ) { |
|
524 | - $this->_default_terms[][$term_slug] = new EE_Default_Term( $taxonomy, $term_slug, $cpt_slugs ); |
|
523 | + function set_default_term($taxonomy, $term_slug, $cpt_slugs = array()) { |
|
524 | + $this->_default_terms[][$term_slug] = new EE_Default_Term($taxonomy, $term_slug, $cpt_slugs); |
|
525 | 525 | } |
526 | 526 | |
527 | 527 | |
@@ -533,20 +533,20 @@ discard block |
||
533 | 533 | * @param object $post Post object |
534 | 534 | * @return void |
535 | 535 | */ |
536 | - function save_default_term( $post_id, $post ) { |
|
537 | - if ( empty( $this->_default_terms ) ) |
|
536 | + function save_default_term($post_id, $post) { |
|
537 | + if (empty($this->_default_terms)) |
|
538 | 538 | return; //no default terms set so lets just exit. |
539 | 539 | |
540 | - foreach ( $this->_default_terms as $defaults ) { |
|
541 | - foreach ( $defaults as $default_obj ) { |
|
542 | - if ( $post->post_status == 'publish' && in_array( $post->post_type, $default_obj->cpt_slugs ) ) { |
|
540 | + foreach ($this->_default_terms as $defaults) { |
|
541 | + foreach ($defaults as $default_obj) { |
|
542 | + if ($post->post_status == 'publish' && in_array($post->post_type, $default_obj->cpt_slugs)) { |
|
543 | 543 | |
544 | 544 | //note some error proofing going on here to save unnecessary db queries |
545 | - $taxonomies = get_object_taxonomies( $post->post_type ); |
|
546 | - foreach ( (array) $taxonomies as $taxonomy ) { |
|
547 | - $terms = wp_get_post_terms( $post_id, $taxonomy); |
|
548 | - if ( empty( $terms ) && $taxonomy == $default_obj->taxonomy ) { |
|
549 | - wp_set_object_terms( $post_id, array( $default_obj->term_slug ), $taxonomy ); |
|
545 | + $taxonomies = get_object_taxonomies($post->post_type); |
|
546 | + foreach ((array) $taxonomies as $taxonomy) { |
|
547 | + $terms = wp_get_post_terms($post_id, $taxonomy); |
|
548 | + if (empty($terms) && $taxonomy == $default_obj->taxonomy) { |
|
549 | + wp_set_object_terms($post_id, array($default_obj->term_slug), $taxonomy); |
|
550 | 550 | } |
551 | 551 | } |
552 | 552 | } |
@@ -578,7 +578,7 @@ discard block |
||
578 | 578 | * @param string $term_slug The slug of the term that will be the default. |
579 | 579 | * @param array $cpt_slugs The custom post type the default term gets saved with |
580 | 580 | */ |
581 | - public function __construct( $taxonomy, $term_slug, $cpt_slugs = array() ) { |
|
581 | + public function __construct($taxonomy, $term_slug, $cpt_slugs = array()) { |
|
582 | 582 | $this->taxonomy = $taxonomy; |
583 | 583 | $this->cpt_slugs = (array) $cpt_slugs; |
584 | 584 | $this->term_slug = $term_slug; |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * |
4 | 6 | * EE_Register_CPTs |
@@ -353,8 +355,9 @@ discard block |
||
353 | 355 | $CPTs = self::get_CPTs(); |
354 | 356 | $private_CPTs = array(); |
355 | 357 | foreach ( $CPTs as $CPT => $details ) { |
356 | - if ( empty( $details['args']['public'] ) ) |
|
357 | - $private_CPTs[ $CPT ] = $details; |
|
358 | + if ( empty( $details['args']['public'] ) ) { |
|
359 | + $private_CPTs[ $CPT ] = $details; |
|
360 | + } |
|
358 | 361 | } |
359 | 362 | return $private_CPTs; |
360 | 363 | } |
@@ -534,8 +537,10 @@ discard block |
||
534 | 537 | * @return void |
535 | 538 | */ |
536 | 539 | function save_default_term( $post_id, $post ) { |
537 | - if ( empty( $this->_default_terms ) ) |
|
538 | - return; //no default terms set so lets just exit. |
|
540 | + if ( empty( $this->_default_terms ) ) { |
|
541 | + return; |
|
542 | + } |
|
543 | + //no default terms set so lets just exit. |
|
539 | 544 | |
540 | 545 | foreach ( $this->_default_terms as $defaults ) { |
541 | 546 | foreach ( $defaults as $default_obj ) { |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | * @var WP $WP |
74 | 74 | * @return void |
75 | 75 | */ |
76 | - public abstract function run( $WP ); |
|
76 | + public abstract function run($WP); |
|
77 | 77 | |
78 | 78 | |
79 | 79 | |
@@ -96,12 +96,12 @@ discard block |
||
96 | 96 | * @param $module_name |
97 | 97 | * @return EED_Module |
98 | 98 | */ |
99 | - protected static function get_instance( $module_name = '' ) { |
|
100 | - $module_name = ! empty( $module_name ) ? $module_name : get_called_class(); |
|
101 | - if ( ! isset( EE_Registry::instance()->modules->{$module_name} ) || ! EE_Registry::instance()->modules->{$module_name} instanceof EED_Module ) { |
|
102 | - EE_Registry::instance()->add_module( $module_name ); |
|
99 | + protected static function get_instance($module_name = '') { |
|
100 | + $module_name = ! empty($module_name) ? $module_name : get_called_class(); |
|
101 | + if ( ! isset(EE_Registry::instance()->modules->{$module_name} ) || ! EE_Registry::instance()->modules->{$module_name} instanceof EED_Module) { |
|
102 | + EE_Registry::instance()->add_module($module_name); |
|
103 | 103 | } |
104 | - return EE_Registry::instance()->get_module( $module_name ); |
|
104 | + return EE_Registry::instance()->get_module($module_name); |
|
105 | 105 | } |
106 | 106 | |
107 | 107 | |
@@ -113,7 +113,7 @@ discard block |
||
113 | 113 | * @return string |
114 | 114 | */ |
115 | 115 | public function module_name() { |
116 | - return get_class( $this ); |
|
116 | + return get_class($this); |
|
117 | 117 | } |
118 | 118 | |
119 | 119 |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Event Espresso |
4 | 6 | * |
@@ -1,5 +1,5 @@ discard block |
||
1 | -<?php if ( ! defined( 'EVENT_ESPRESSO_VERSION' ) ) { |
|
2 | - exit( 'No direct script access allowed' ); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | 3 | } |
4 | 4 | /** |
5 | 5 | * Class EE_Base_Class_Repository |
@@ -39,8 +39,8 @@ discard block |
||
39 | 39 | * @param array $arguments arrays of arguments that will be passed to the object's save method |
40 | 40 | * @return bool | int |
41 | 41 | */ |
42 | - public function save( $arguments = array() ) { |
|
43 | - return $this->persist( 'save', $arguments ); |
|
42 | + public function save($arguments = array()) { |
|
43 | + return $this->persist('save', $arguments); |
|
44 | 44 | } |
45 | 45 | |
46 | 46 | |
@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | * @return bool | int |
55 | 55 | */ |
56 | 56 | public function save_all() { |
57 | - return $this->persist_all( 'save' ); |
|
57 | + return $this->persist_all('save'); |
|
58 | 58 | } |
59 | 59 | |
60 | 60 | |
@@ -68,8 +68,8 @@ discard block |
||
68 | 68 | * @return bool |
69 | 69 | */ |
70 | 70 | public function delete() { |
71 | - $success = $this->_call_user_func_array_on_current( 'delete' ); |
|
72 | - $this->remove( $this->current() ); |
|
71 | + $success = $this->_call_user_func_array_on_current('delete'); |
|
72 | + $this->remove($this->current()); |
|
73 | 73 | return $success; |
74 | 74 | } |
75 | 75 | |
@@ -86,16 +86,16 @@ discard block |
||
86 | 86 | public function delete_all() { |
87 | 87 | $success = true; |
88 | 88 | $this->rewind(); |
89 | - while ( $this->valid() ) { |
|
89 | + while ($this->valid()) { |
|
90 | 90 | // any db error will result in false being returned |
91 | - $success = $this->_call_user_func_array_on_current( 'delete' ) !== false ? $success : false; |
|
91 | + $success = $this->_call_user_func_array_on_current('delete') !== false ? $success : false; |
|
92 | 92 | // can't remove current object because valid() requires it |
93 | 93 | // so just capture current object temporarily |
94 | 94 | $object = $this->current(); |
95 | 95 | // advance the pointer |
96 | 96 | $this->next(); |
97 | 97 | // THEN remove the object from the repository |
98 | - $this->remove( $object ); |
|
98 | + $this->remove($object); |
|
99 | 99 | } |
100 | 100 | return $success; |
101 | 101 | } |
@@ -113,8 +113,8 @@ discard block |
||
113 | 113 | * @param string $previous_value |
114 | 114 | * @return bool | int |
115 | 115 | */ |
116 | - public function update_extra_meta( $meta_key, $meta_value, $previous_value = null ) { |
|
117 | - return $this->_call_user_func_array_on_current( 'update_extra_meta', array( $meta_key, $meta_value, $previous_value ) ); |
|
116 | + public function update_extra_meta($meta_key, $meta_value, $previous_value = null) { |
|
117 | + return $this->_call_user_func_array_on_current('update_extra_meta', array($meta_key, $meta_value, $previous_value)); |
|
118 | 118 | } |
119 | 119 | |
120 | 120 |
@@ -52,8 +52,8 @@ discard block |
||
52 | 52 | /** |
53 | 53 | * @param string $config_section |
54 | 54 | */ |
55 | - public function set_config_section( $config_section = '' ) { |
|
56 | - $this->_config_section = ! empty( $config_section ) ? $config_section : 'modules'; |
|
55 | + public function set_config_section($config_section = '') { |
|
56 | + $this->_config_section = ! empty($config_section) ? $config_section : 'modules'; |
|
57 | 57 | } |
58 | 58 | |
59 | 59 | |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | /** |
71 | 71 | * @param string $config_class |
72 | 72 | */ |
73 | - public function set_config_class( $config_class = '' ) { |
|
73 | + public function set_config_class($config_class = '') { |
|
74 | 74 | $this->_config_class = $config_class; |
75 | 75 | } |
76 | 76 | |
@@ -88,8 +88,8 @@ discard block |
||
88 | 88 | /** |
89 | 89 | * @param mixed $config_name |
90 | 90 | */ |
91 | - public function set_config_name( $config_name ) { |
|
92 | - $this->_config_name = ! empty( $config_name ) ? $config_name : get_called_class(); |
|
91 | + public function set_config_name($config_name) { |
|
92 | + $this->_config_name = ! empty($config_name) ? $config_name : get_called_class(); |
|
93 | 93 | } |
94 | 94 | |
95 | 95 | |
@@ -112,8 +112,8 @@ discard block |
||
112 | 112 | * @param EE_Config_Base $config_obj |
113 | 113 | * @return mixed EE_Config_Base | NULL |
114 | 114 | */ |
115 | - protected function _set_config( EE_Config_Base $config_obj = NULL ) { |
|
116 | - return EE_Config::instance()->set_config( $this->config_section(), $this->config_name(), $this->config_class(), $config_obj ); |
|
115 | + protected function _set_config(EE_Config_Base $config_obj = NULL) { |
|
116 | + return EE_Config::instance()->set_config($this->config_section(), $this->config_name(), $this->config_class(), $config_obj); |
|
117 | 117 | } |
118 | 118 | |
119 | 119 | |
@@ -127,12 +127,12 @@ discard block |
||
127 | 127 | * @throws \EE_Error |
128 | 128 | * @return mixed EE_Config_Base | NULL |
129 | 129 | */ |
130 | - public function _update_config( EE_Config_Base $config_obj = NULL ) { |
|
130 | + public function _update_config(EE_Config_Base $config_obj = NULL) { |
|
131 | 131 | $config_class = $this->config_class(); |
132 | - if ( ! $config_obj instanceof $config_class ) { |
|
133 | - throw new EE_Error( sprintf( __( 'The "%1$s" class is not an instance of %2$s.', 'event_espresso' ), print_r( $config_obj, TRUE ), $config_class )); |
|
132 | + if ( ! $config_obj instanceof $config_class) { |
|
133 | + throw new EE_Error(sprintf(__('The "%1$s" class is not an instance of %2$s.', 'event_espresso'), print_r($config_obj, TRUE), $config_class)); |
|
134 | 134 | } |
135 | - return EE_Config::instance()->update_config( $this->config_section(), $this->config_name(), $config_obj ); |
|
135 | + return EE_Config::instance()->update_config($this->config_section(), $this->config_name(), $config_obj); |
|
136 | 136 | } |
137 | 137 | |
138 | 138 | |
@@ -143,8 +143,8 @@ discard block |
||
143 | 143 | * @return EE_Config_Base |
144 | 144 | */ |
145 | 145 | public function config() { |
146 | - if ( empty( $this->_config )) { |
|
147 | - $this->_config = EE_Config::instance()->get_config( $this->config_section(), $this->config_name(), $this->config_class() ); |
|
146 | + if (empty($this->_config)) { |
|
147 | + $this->_config = EE_Config::instance()->get_config($this->config_section(), $this->config_name(), $this->config_class()); |
|
148 | 148 | } |
149 | 149 | return $this->_config; |
150 | 150 | } |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Event Espresso |
4 | 6 | * |
@@ -28,9 +28,9 @@ |
||
28 | 28 | |
29 | 29 | |
30 | 30 | /** |
31 | - * instance of the EE_Data_Mapper Object |
|
32 | - * @private _instance |
|
33 | - */ |
|
31 | + * instance of the EE_Data_Mapper Object |
|
32 | + * @private _instance |
|
33 | + */ |
|
34 | 34 | private static $_instance = NULL; |
35 | 35 | |
36 | 36 |
@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | */ |
55 | 55 | public function &instance() { |
56 | 56 | // check if class object is instantiated |
57 | - if ( self::$_instance === NULL or ! is_object( self::$_instance ) or ! ( self::$_instance instanceof EE_Data_Mapper )) { |
|
57 | + if (self::$_instance === NULL or ! is_object(self::$_instance) or ! (self::$_instance instanceof EE_Data_Mapper)) { |
|
58 | 58 | self::$_instance = new self(); |
59 | 59 | } |
60 | 60 | return self::$_instance; |
@@ -71,10 +71,10 @@ discard block |
||
71 | 71 | * @ return void |
72 | 72 | */ |
73 | 73 | final function __destruct() {} |
74 | - final function __call($a,$b) {} |
|
75 | - public static function __callStatic($a,$b) {} |
|
74 | + final function __call($a, $b) {} |
|
75 | + public static function __callStatic($a, $b) {} |
|
76 | 76 | final function __get($a) {} |
77 | - final function __set($a,$b) {} |
|
77 | + final function __set($a, $b) {} |
|
78 | 78 | final function __isset($a) {} |
79 | 79 | final function __unset($a) {} |
80 | 80 | final function __sleep() { |
@@ -110,9 +110,9 @@ discard block |
||
110 | 110 | var $stati_that_indicate_to_stop_single_migration_script = array(); |
111 | 111 | |
112 | 112 | /** |
113 | - * @var EE_Data_Migration_Manager $_instance |
|
113 | + * @var EE_Data_Migration_Manager $_instance |
|
114 | 114 | * @access private |
115 | - */ |
|
115 | + */ |
|
116 | 116 | private static $_instance = NULL; |
117 | 117 | |
118 | 118 | /** |
@@ -905,12 +905,12 @@ discard block |
||
905 | 905 | } |
906 | 906 | |
907 | 907 | /** |
908 | - * Resets the borked data migration scripts so they're no longer borked |
|
909 | - * so we can again attempt to migrate |
|
910 | - * |
|
911 | - * @return bool |
|
912 | - * @throws \EE_Error |
|
913 | - */ |
|
908 | + * Resets the borked data migration scripts so they're no longer borked |
|
909 | + * so we can again attempt to migrate |
|
910 | + * |
|
911 | + * @return bool |
|
912 | + * @throws \EE_Error |
|
913 | + */ |
|
914 | 914 | public function reattempt(){ |
915 | 915 | //find if the last-ran script was borked |
916 | 916 | //set it as being non-borked (we shouldn't ever get DMSs that we don't recognize) |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | //it's 4.2-style.eg Core.4.1.0 |
188 | 188 | $plugin_slug = $parts[0];//eg Core |
189 | 189 | $version_string = $parts[1].".".$parts[2].".".$parts[3]; //eg 4.1.0 |
190 | - }else{ |
|
190 | + } else{ |
|
191 | 191 | //it's 4.1-style: eg 4.1.0 |
192 | 192 | $plugin_slug = 'Core'; |
193 | 193 | $version_string = $plugin_slug_and_version_string;//eg 4.1.0 |
@@ -210,12 +210,12 @@ discard block |
||
210 | 210 | if($class instanceof EE_Data_Migration_Script_Base){ |
211 | 211 | $class->instantiate_from_array_of_properties($data_migration_data); |
212 | 212 | return $class; |
213 | - }else{ |
|
213 | + } else{ |
|
214 | 214 | //huh, so its an object but not a data migration script?? that shouldn't happen |
215 | 215 | //just leave it as an array (which will probably just get ignored) |
216 | 216 | throw new EE_Error(sprintf(__("Trying to retrieve DMS class from wp option. No DMS by the name '%s' exists", 'event_espresso'),$data_migration_data['class'])); |
217 | 217 | } |
218 | - }else{ |
|
218 | + } else{ |
|
219 | 219 | //so the data doesn't specify a class. So it must either be a legacy array of info or some array (which we'll probably just ignore), or a class that no longer exists |
220 | 220 | throw new EE_Error(sprintf(__("The wp option with key '%s' does not represent a DMS", 'event_espresso'),$dms_option_name)); |
221 | 221 | } |
@@ -245,7 +245,7 @@ discard block |
||
245 | 245 | //sometimes we also like to know which was the last incomplete script (or if there are any at all) |
246 | 246 | $this->_last_ran_incomplete_script = $class; |
247 | 247 | } |
248 | - }catch(EE_Error $e){ |
|
248 | + } catch(EE_Error $e){ |
|
249 | 249 | //ok so its not a DMS. We'll just keep it, although other code will need to expect non-DMSs |
250 | 250 | $data_migrations_ran[$plugin_slug][$version_string] = maybe_unserialize($data_migration_option['option_value']); |
251 | 251 | } |
@@ -346,7 +346,7 @@ discard block |
||
346 | 346 | //so we want the data migrations to happen. SO, we're going to say the DB is at that state |
347 | 347 | // echo "4.1.0 is greater than $previous_version_installed! update the option"; |
348 | 348 | $db_state = array('Core'=>$previous_version_installed); |
349 | - }else{ |
|
349 | + } else{ |
|
350 | 350 | // echo "4.1.0 is SMALLER than $previous_version_installed"; |
351 | 351 | $db_state = array('Core'=>EVENT_ESPRESSO_VERSION); |
352 | 352 | } |
@@ -414,10 +414,10 @@ discard block |
||
414 | 414 | $migrates_to_version = $script->migrates_to_version(); |
415 | 415 | $next_database_state_to_consider[ $migrates_to_version[ 'slug' ] ] = $migrates_to_version[ 'version' ]; |
416 | 416 | unset($script_class_and_filepaths_available[$classname]); |
417 | - }else{ |
|
417 | + } else{ |
|
418 | 418 | //it must have a status that indicates it has finished, so we don't want to try and run it again |
419 | 419 | } |
420 | - }else{ |
|
420 | + } else{ |
|
421 | 421 | //it exists but it's not a proper data migration script |
422 | 422 | //maybe the script got renamed? or was simply removed from EE? |
423 | 423 | //either way, its certainly not runnable! |
@@ -457,7 +457,7 @@ discard block |
||
457 | 457 | } |
458 | 458 | if($include_completed_scripts){ |
459 | 459 | return $this->_last_ran_script; |
460 | - }else{ |
|
460 | + } else{ |
|
461 | 461 | return $this->_last_ran_incomplete_script; |
462 | 462 | } |
463 | 463 | } |
@@ -516,7 +516,7 @@ discard block |
||
516 | 516 | $this->_data_migrations_ran[$plugin_slug][$version] = $currently_executing_script; |
517 | 517 | } |
518 | 518 | $current_script_name = get_class($currently_executing_script); |
519 | - }catch(Exception $e){ |
|
519 | + } catch(Exception $e){ |
|
520 | 520 | //an exception occurred while trying to get migration scripts |
521 | 521 | |
522 | 522 | $message = sprintf( __("Error Message: %sStack Trace:%s", "event_espresso"), $e->getMessage() . '<br>', $e->getTraceAsString() ); |
@@ -581,14 +581,14 @@ discard block |
||
581 | 581 | ); |
582 | 582 | break; |
583 | 583 | } |
584 | - }catch(Exception $e){ |
|
584 | + } catch(Exception $e){ |
|
585 | 585 | //ok so some exception was thrown which killed the data migration script |
586 | 586 | //double-check we have a real script |
587 | 587 | if($currently_executing_script instanceof EE_Data_Migration_Script_Base){ |
588 | 588 | $script_name = $currently_executing_script->pretty_name(); |
589 | 589 | $currently_executing_script->set_broken(); |
590 | 590 | $currently_executing_script->add_error($e->getMessage()); |
591 | - }else{ |
|
591 | + } else{ |
|
592 | 592 | $script_name = __("Error getting Migration Script", "event_espresso"); |
593 | 593 | } |
594 | 594 | $response_array = array( |
@@ -631,7 +631,7 @@ discard block |
||
631 | 631 | ob_start(); |
632 | 632 | try{ |
633 | 633 | $response = $this->migration_step(); |
634 | - }catch(Exception $e){ |
|
634 | + } catch(Exception $e){ |
|
635 | 635 | $response = array( |
636 | 636 | 'records_to_migrate'=>0, |
637 | 637 | 'records_migrated'=>0, |
@@ -680,7 +680,7 @@ discard block |
||
680 | 680 | $current_database_state = get_option(self::current_database_state); |
681 | 681 | if( ! isset( $current_database_state[ $slug ] ) ) { |
682 | 682 | return true; |
683 | - }else{ |
|
683 | + } else{ |
|
684 | 684 | //just compare the first 3 parts of version string, eg "4.7.1", not "4.7.1.dev.032" because DBs shouldn't change on nano version changes |
685 | 685 | $version_parts_current_db_state = array_slice( explode('.', $current_database_state[ $slug ] ), 0, 3); |
686 | 686 | $version_parts_of_provided_db_state = array_slice( explode( '.', $version ), 0, 3 ); |
@@ -769,7 +769,7 @@ discard block |
||
769 | 769 | //ok then just add this error to its list of errors |
770 | 770 | $last_ran_migration_script_properties['_errors'][] = $error_message; |
771 | 771 | $last_ran_migration_script_properties['_status'] = self::status_fatal_error; |
772 | - }else{ |
|
772 | + } else{ |
|
773 | 773 | //so we don't even know which script was last running |
774 | 774 | //use the data migration error stub, which is designed specifically for this type of thing |
775 | 775 | $general_migration_error = new EE_DMS_Unknown_1_0_0(); |
@@ -805,7 +805,7 @@ discard block |
||
805 | 805 | if( $old_option_value != $script_array_for_saving){ |
806 | 806 | $successful_updates = update_option($option_name,$script_array_for_saving); |
807 | 807 | } |
808 | - }else{//we don't know what this array-thing is. So just save it as-is |
|
808 | + } else{//we don't know what this array-thing is. So just save it as-is |
|
809 | 809 | // $array_of_migrations[$version_string] = $array_or_migration_obj; |
810 | 810 | if($old_option_value != $array_or_migration_obj){ |
811 | 811 | $successful_updates = update_option($option_name,$array_or_migration_obj); |
@@ -872,7 +872,7 @@ discard block |
||
872 | 872 | } |
873 | 873 | //if it wasn't for core, we must keep searching for one that is! |
874 | 874 | continue; |
875 | - }else{ |
|
875 | + } else{ |
|
876 | 876 | $champion_migrates_to= $this->script_migrates_to_version($most_up_to_date_dms_classname); |
877 | 877 | $contender_migrates_to = $this->script_migrates_to_version($classname); |
878 | 878 | if($contender_migrates_to[ 'slug' ] == $plugin_slug && version_compare($champion_migrates_to[ 'version' ], $contender_migrates_to[ 'version' ], '<')){ |
@@ -899,7 +899,7 @@ discard block |
||
899 | 899 | $migrations_ran = $this->get_data_migrations_ran(); |
900 | 900 | if( isset( $migrations_ran[ $plugin_slug ] ) && isset( $migrations_ran[ $plugin_slug ][ $version ] ) ){ |
901 | 901 | return $migrations_ran[ $plugin_slug ][ $version ]; |
902 | - }else{ |
|
902 | + } else{ |
|
903 | 903 | return NULL; |
904 | 904 | } |
905 | 905 | } |
@@ -921,9 +921,9 @@ discard block |
||
921 | 921 | if( $last_ran_script instanceof EE_DMS_Unknown_1_0_0 ){ |
922 | 922 | //if it was an error DMS, just mark it as complete (if another error occurs it will overwrite it) |
923 | 923 | $last_ran_script->set_completed(); |
924 | - }elseif( $last_ran_script instanceof EE_Data_Migration_Script_Base ) { |
|
924 | + } elseif( $last_ran_script instanceof EE_Data_Migration_Script_Base ) { |
|
925 | 925 | $last_ran_script->reattempt(); |
926 | - }else{ |
|
926 | + } else{ |
|
927 | 927 | throw new EE_Error( sprintf( __( 'Unable to reattempt the last ran migration script because it was not a valid migration script. || It was %s', 'event_espresso' ), print_r( $last_ran_script ) ) ); |
928 | 928 | } |
929 | 929 | return $this->_save_migrations_ran(); |
@@ -962,7 +962,7 @@ discard block |
||
962 | 962 | if( ! $most_up_to_date_dms ) { |
963 | 963 | //if there is NO DMS for this plugin, obviously there's no schema to verify anyways |
964 | 964 | $verify_db = false; |
965 | - }else{ |
|
965 | + } else{ |
|
966 | 966 | $most_up_to_date_dms_migrates_to = $this->script_migrates_to_version( $most_up_to_date_dms ); |
967 | 967 | $verify_db = $this->database_needs_updating_to( $most_up_to_date_dms_migrates_to ); |
968 | 968 | } |
@@ -971,7 +971,7 @@ discard block |
||
971 | 971 | false, |
972 | 972 | $verify_db |
973 | 973 | ); |
974 | - }else{ |
|
974 | + } else{ |
|
975 | 975 | //just loop through the addons to make sure their database is setup |
976 | 976 | foreach( EE_Registry::instance()->addons as $addon ) { |
977 | 977 | if( $addon->name() == $plugin_slug ) { |
@@ -21,7 +21,7 @@ discard block |
||
21 | 21 | * to indicate it successfully migrate some data, and has nothing left to do; or EE_Data_Migration_Manager::status_fatal_error to indicate |
22 | 22 | * an error occurred which means the ajax script should probably stop executing. |
23 | 23 | */ |
24 | -class EE_Data_Migration_Manager{ |
|
24 | +class EE_Data_Migration_Manager { |
|
25 | 25 | |
26 | 26 | /** |
27 | 27 | * |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | * of this EE installation. Keys should be the name of the version the script upgraded to |
79 | 79 | * @var EE_Data_Migration_Script_Base[] |
80 | 80 | */ |
81 | - private $_data_migrations_ran =null; |
|
81 | + private $_data_migrations_ran = null; |
|
82 | 82 | /** |
83 | 83 | * The last ran script. It's nice to store this somewhere accessible, as its easiest |
84 | 84 | * to know which was the last run by which is the newest wp option; but in most of the code |
@@ -122,7 +122,7 @@ discard block |
||
122 | 122 | */ |
123 | 123 | public static function instance() { |
124 | 124 | // check if class object is instantiated |
125 | - if ( ! self::$_instance instanceof EE_Data_Migration_Manager ) { |
|
125 | + if ( ! self::$_instance instanceof EE_Data_Migration_Manager) { |
|
126 | 126 | self::$_instance = new self(); |
127 | 127 | } |
128 | 128 | return self::$_instance; |
@@ -132,7 +132,7 @@ discard block |
||
132 | 132 | * all new usages of the singleton should be made with Classname::instance()) and returns it |
133 | 133 | * @return EE_Data_Migration_Manager |
134 | 134 | */ |
135 | - public static function reset(){ |
|
135 | + public static function reset() { |
|
136 | 136 | self::$_instance = NULL; |
137 | 137 | return self::instance(); |
138 | 138 | } |
@@ -142,7 +142,7 @@ discard block |
||
142 | 142 | /** |
143 | 143 | * constructor |
144 | 144 | */ |
145 | - private function __construct(){ |
|
145 | + private function __construct() { |
|
146 | 146 | $this->stati_that_indicate_to_continue_migrations = array( |
147 | 147 | self::status_continue, |
148 | 148 | self::status_completed |
@@ -161,11 +161,11 @@ discard block |
||
161 | 161 | ); |
162 | 162 | //make sure we've included the base migration script, because we may need the EE_DMS_Unknown_1_0_0 class |
163 | 163 | //to be defined, because right now it doesn't get autoloaded on its own |
164 | - EE_Registry::instance()->load_core( 'Data_Migration_Class_Base', array(), TRUE ); |
|
165 | - EE_Registry::instance()->load_core( 'Data_Migration_Script_Base', array(), TRUE ); |
|
166 | - EE_Registry::instance()->load_core( 'DMS_Unknown_1_0_0', array(), TRUE ); |
|
167 | - EE_Registry::instance()->load_core( 'Data_Migration_Script_Stage', array(), TRUE ); |
|
168 | - EE_Registry::instance()->load_core( 'Data_Migration_Script_Stage_Table', array(), TRUE ); |
|
164 | + EE_Registry::instance()->load_core('Data_Migration_Class_Base', array(), TRUE); |
|
165 | + EE_Registry::instance()->load_core('Data_Migration_Script_Base', array(), TRUE); |
|
166 | + EE_Registry::instance()->load_core('DMS_Unknown_1_0_0', array(), TRUE); |
|
167 | + EE_Registry::instance()->load_core('Data_Migration_Script_Stage', array(), TRUE); |
|
168 | + EE_Registry::instance()->load_core('Data_Migration_Script_Stage_Table', array(), TRUE); |
|
169 | 169 | } |
170 | 170 | |
171 | 171 | |
@@ -178,21 +178,21 @@ discard block |
||
178 | 178 | * @param string $option_name (see EE_Data_Migration_Manage::_save_migrations_ran() where the option name is set) |
179 | 179 | * @return array where the first item is the plugin slug (eg 'Core','Calendar',etc) and the 2nd is the version of that plugin (eg '4.1.0') |
180 | 180 | */ |
181 | - private function _get_plugin_slug_and_version_string_from_dms_option_name($option_name){ |
|
181 | + private function _get_plugin_slug_and_version_string_from_dms_option_name($option_name) { |
|
182 | 182 | $plugin_slug_and_version_string = str_replace(EE_Data_Migration_Manager::data_migration_script_option_prefix, "", $option_name); |
183 | 183 | //check if $plugin_slug_and_version_string is like '4.1.0' (4.1-style) or 'Core.4.1.0' (4.2-style) |
184 | - $parts = explode(".",$plugin_slug_and_version_string); |
|
184 | + $parts = explode(".", $plugin_slug_and_version_string); |
|
185 | 185 | |
186 | - if(count($parts) == 4){ |
|
186 | + if (count($parts) == 4) { |
|
187 | 187 | //it's 4.2-style.eg Core.4.1.0 |
188 | - $plugin_slug = $parts[0];//eg Core |
|
188 | + $plugin_slug = $parts[0]; //eg Core |
|
189 | 189 | $version_string = $parts[1].".".$parts[2].".".$parts[3]; //eg 4.1.0 |
190 | - }else{ |
|
190 | + } else { |
|
191 | 191 | //it's 4.1-style: eg 4.1.0 |
192 | 192 | $plugin_slug = 'Core'; |
193 | - $version_string = $plugin_slug_and_version_string;//eg 4.1.0 |
|
193 | + $version_string = $plugin_slug_and_version_string; //eg 4.1.0 |
|
194 | 194 | } |
195 | - return array($plugin_slug,$version_string); |
|
195 | + return array($plugin_slug, $version_string); |
|
196 | 196 | } |
197 | 197 | |
198 | 198 | /** |
@@ -203,21 +203,21 @@ discard block |
||
203 | 203 | * @return EE_Data_Migration_Script_Base |
204 | 204 | * @throws EE_Error |
205 | 205 | */ |
206 | - private function _get_dms_class_from_wp_option($dms_option_name,$dms_option_value){ |
|
206 | + private function _get_dms_class_from_wp_option($dms_option_name, $dms_option_value) { |
|
207 | 207 | $data_migration_data = maybe_unserialize($dms_option_value); |
208 | - if(isset($data_migration_data['class']) && class_exists($data_migration_data['class'])){ |
|
208 | + if (isset($data_migration_data['class']) && class_exists($data_migration_data['class'])) { |
|
209 | 209 | $class = new $data_migration_data['class']; |
210 | - if($class instanceof EE_Data_Migration_Script_Base){ |
|
210 | + if ($class instanceof EE_Data_Migration_Script_Base) { |
|
211 | 211 | $class->instantiate_from_array_of_properties($data_migration_data); |
212 | 212 | return $class; |
213 | - }else{ |
|
213 | + } else { |
|
214 | 214 | //huh, so its an object but not a data migration script?? that shouldn't happen |
215 | 215 | //just leave it as an array (which will probably just get ignored) |
216 | - throw new EE_Error(sprintf(__("Trying to retrieve DMS class from wp option. No DMS by the name '%s' exists", 'event_espresso'),$data_migration_data['class'])); |
|
216 | + throw new EE_Error(sprintf(__("Trying to retrieve DMS class from wp option. No DMS by the name '%s' exists", 'event_espresso'), $data_migration_data['class'])); |
|
217 | 217 | } |
218 | - }else{ |
|
218 | + } else { |
|
219 | 219 | //so the data doesn't specify a class. So it must either be a legacy array of info or some array (which we'll probably just ignore), or a class that no longer exists |
220 | - throw new EE_Error(sprintf(__("The wp option with key '%s' does not represent a DMS", 'event_espresso'),$dms_option_name)); |
|
220 | + throw new EE_Error(sprintf(__("The wp option with key '%s' does not represent a DMS", 'event_espresso'), $dms_option_name)); |
|
221 | 221 | } |
222 | 222 | } |
223 | 223 | /** |
@@ -225,34 +225,34 @@ discard block |
||
225 | 225 | * the last ran which hasn't finished yet |
226 | 226 | * @return array where each element should be an array of EE_Data_Migration_Script_Base (but also has a few legacy arrays in there - which should probably be ignored) |
227 | 227 | */ |
228 | - public function get_data_migrations_ran(){ |
|
229 | - if( ! $this->_data_migrations_ran ){ |
|
228 | + public function get_data_migrations_ran() { |
|
229 | + if ( ! $this->_data_migrations_ran) { |
|
230 | 230 | //setup autoloaders for each of the scripts in there |
231 | 231 | $this->get_all_data_migration_scripts_available(); |
232 | - $data_migrations_options = $this->get_all_migration_script_options();//get_option(EE_Data_Migration_Manager::data_migrations_option_name,get_option('espresso_data_migrations',array())); |
|
232 | + $data_migrations_options = $this->get_all_migration_script_options(); //get_option(EE_Data_Migration_Manager::data_migrations_option_name,get_option('espresso_data_migrations',array())); |
|
233 | 233 | |
234 | 234 | $data_migrations_ran = array(); |
235 | 235 | //convert into data migration script classes where possible |
236 | - foreach($data_migrations_options as $data_migration_option){ |
|
237 | - list($plugin_slug,$version_string) = $this->_get_plugin_slug_and_version_string_from_dms_option_name($data_migration_option['option_name']); |
|
236 | + foreach ($data_migrations_options as $data_migration_option) { |
|
237 | + list($plugin_slug, $version_string) = $this->_get_plugin_slug_and_version_string_from_dms_option_name($data_migration_option['option_name']); |
|
238 | 238 | |
239 | - try{ |
|
240 | - $class = $this->_get_dms_class_from_wp_option($data_migration_option['option_name'],$data_migration_option['option_value']); |
|
239 | + try { |
|
240 | + $class = $this->_get_dms_class_from_wp_option($data_migration_option['option_name'], $data_migration_option['option_value']); |
|
241 | 241 | $data_migrations_ran[$plugin_slug][$version_string] = $class; |
242 | 242 | //ok so far THIS is the 'last-ran-script'... unless we find another on next iteration |
243 | 243 | $this->_last_ran_script = $class; |
244 | - if( ! $class->is_completed()){ |
|
244 | + if ( ! $class->is_completed()) { |
|
245 | 245 | //sometimes we also like to know which was the last incomplete script (or if there are any at all) |
246 | 246 | $this->_last_ran_incomplete_script = $class; |
247 | 247 | } |
248 | - }catch(EE_Error $e){ |
|
248 | + } catch (EE_Error $e) { |
|
249 | 249 | //ok so its not a DMS. We'll just keep it, although other code will need to expect non-DMSs |
250 | 250 | $data_migrations_ran[$plugin_slug][$version_string] = maybe_unserialize($data_migration_option['option_value']); |
251 | 251 | } |
252 | 252 | } |
253 | 253 | //so here the array of $data_migrations_ran is actually a mix of classes and a few legacy arrays |
254 | 254 | $this->_data_migrations_ran = $data_migrations_ran; |
255 | - if ( ! $this->_data_migrations_ran || ! is_array($this->_data_migrations_ran) ){ |
|
255 | + if ( ! $this->_data_migrations_ran || ! is_array($this->_data_migrations_ran)) { |
|
256 | 256 | $this->_data_migrations_ran = array(); |
257 | 257 | } |
258 | 258 | } |
@@ -269,7 +269,7 @@ discard block |
||
269 | 269 | * @param $new_table |
270 | 270 | * @return mixed string or int |
271 | 271 | */ |
272 | - public function get_mapping_new_pk( $script_name, $old_table, $old_pk, $new_table){ |
|
272 | + public function get_mapping_new_pk($script_name, $old_table, $old_pk, $new_table) { |
|
273 | 273 | $script = EE_Registry::instance()->load_dms($script_name); |
274 | 274 | $mapping = $script->get_mapping_new_pk($old_table, $old_pk, $new_table); |
275 | 275 | return $mapping; |
@@ -280,9 +280,9 @@ discard block |
||
280 | 280 | * option returned in this array is the most-recently ran DMS option |
281 | 281 | * @return array |
282 | 282 | */ |
283 | - public function get_all_migration_script_options(){ |
|
283 | + public function get_all_migration_script_options() { |
|
284 | 284 | global $wpdb; |
285 | - return $wpdb->get_results("SELECT * FROM {$wpdb->options} WHERE option_name like '".EE_Data_Migration_Manager::data_migration_script_option_prefix."%' ORDER BY option_id ASC",ARRAY_A); |
|
285 | + return $wpdb->get_results("SELECT * FROM {$wpdb->options} WHERE option_name like '".EE_Data_Migration_Manager::data_migration_script_option_prefix."%' ORDER BY option_id ASC", ARRAY_A); |
|
286 | 286 | } |
287 | 287 | |
288 | 288 | /** |
@@ -290,8 +290,8 @@ discard block |
||
290 | 290 | * @return array where each value is the full folder path of a folder containing data migration scripts, WITH slashes at the end of the |
291 | 291 | * folder name. |
292 | 292 | */ |
293 | - public function get_data_migration_script_folders(){ |
|
294 | - return apply_filters( 'FHEE__EE_Data_Migration_Manager__get_data_migration_script_folders',array(EE_CORE.'data_migration_scripts') ); |
|
293 | + public function get_data_migration_script_folders() { |
|
294 | + return apply_filters('FHEE__EE_Data_Migration_Manager__get_data_migration_script_folders', array(EE_CORE.'data_migration_scripts')); |
|
295 | 295 | } |
296 | 296 | |
297 | 297 | /** |
@@ -303,11 +303,11 @@ discard block |
||
303 | 303 | * } |
304 | 304 | * @throws EE_Error |
305 | 305 | */ |
306 | - public function script_migrates_to_version($migration_script_name){ |
|
306 | + public function script_migrates_to_version($migration_script_name) { |
|
307 | 307 | $dms_info = $this->parse_dms_classname($migration_script_name); |
308 | 308 | return array( |
309 | - 'slug'=> $dms_info[ 'slug' ], |
|
310 | - 'version'=> $dms_info[ 'major_version' ] . "." . $dms_info[ 'minor_version' ] . "." . $dms_info[ 'micro_version' ] ); |
|
309 | + 'slug'=> $dms_info['slug'], |
|
310 | + 'version'=> $dms_info['major_version'].".".$dms_info['minor_version'].".".$dms_info['micro_version'] ); |
|
311 | 311 | } |
312 | 312 | |
313 | 313 | /** |
@@ -316,13 +316,13 @@ discard block |
||
316 | 316 | * @return array with keys 'slug','major_version','minor_version', and 'micro_version' (the last 3 are ints) |
317 | 317 | * @throws EE_Error |
318 | 318 | */ |
319 | - public function parse_dms_classname($classname){ |
|
319 | + public function parse_dms_classname($classname) { |
|
320 | 320 | $matches = array(); |
321 | - preg_match('~EE_DMS_(.*)_([0-9]*)_([0-9]*)_([0-9]*)~',$classname,$matches); |
|
322 | - if( ! $matches || ! (isset($matches[1]) && isset($matches[2]) && isset($matches[3]))){ |
|
323 | - throw new EE_Error(sprintf(__("%s is not a valid Data Migration Script. The classname should be like EE_DMS_w_x_y_z, where w is either 'Core' or the slug of an addon and x, y and z are numbers, ", "event_espresso"),$classname)); |
|
321 | + preg_match('~EE_DMS_(.*)_([0-9]*)_([0-9]*)_([0-9]*)~', $classname, $matches); |
|
322 | + if ( ! $matches || ! (isset($matches[1]) && isset($matches[2]) && isset($matches[3]))) { |
|
323 | + throw new EE_Error(sprintf(__("%s is not a valid Data Migration Script. The classname should be like EE_DMS_w_x_y_z, where w is either 'Core' or the slug of an addon and x, y and z are numbers, ", "event_espresso"), $classname)); |
|
324 | 324 | } |
325 | - return array('slug'=>$matches[1],'major_version'=>intval($matches[2]),'minor_version'=>intval($matches[3]),'micro_version'=>intval($matches[4])); |
|
325 | + return array('slug'=>$matches[1], 'major_version'=>intval($matches[2]), 'minor_version'=>intval($matches[3]), 'micro_version'=>intval($matches[4])); |
|
326 | 326 | } |
327 | 327 | /** |
328 | 328 | * Ensures that the option indicating the current DB version is set. This should only be |
@@ -331,33 +331,33 @@ discard block |
||
331 | 331 | * to 4.1.x. |
332 | 332 | * @return string of current db state |
333 | 333 | */ |
334 | - public function ensure_current_database_state_is_set(){ |
|
335 | - $espresso_db_core_updates = get_option( 'espresso_db_update', array() ); |
|
334 | + public function ensure_current_database_state_is_set() { |
|
335 | + $espresso_db_core_updates = get_option('espresso_db_update', array()); |
|
336 | 336 | $db_state = get_option(EE_Data_Migration_Manager::current_database_state); |
337 | - if( ! $db_state ){ |
|
337 | + if ( ! $db_state) { |
|
338 | 338 | //mark the DB as being in the state as the last version in there. |
339 | 339 | //this is done to trigger maintenance mode and do data migration scripts |
340 | 340 | //if the admin installed this version of EE over 3.1.x or 4.0.x |
341 | 341 | //otherwise, the normal maintenance mode code is fine |
342 | 342 | $previous_versions_installed = array_keys($espresso_db_core_updates); |
343 | 343 | $previous_version_installed = end($previous_versions_installed); |
344 | - if(version_compare('4.1.0', $previous_version_installed)){ |
|
344 | + if (version_compare('4.1.0', $previous_version_installed)) { |
|
345 | 345 | //last installed version was less than 4.1 |
346 | 346 | //so we want the data migrations to happen. SO, we're going to say the DB is at that state |
347 | 347 | // echo "4.1.0 is greater than $previous_version_installed! update the option"; |
348 | 348 | $db_state = array('Core'=>$previous_version_installed); |
349 | - }else{ |
|
349 | + } else { |
|
350 | 350 | // echo "4.1.0 is SMALLER than $previous_version_installed"; |
351 | 351 | $db_state = array('Core'=>EVENT_ESPRESSO_VERSION); |
352 | 352 | } |
353 | - update_option(EE_Data_Migration_Manager::current_database_state,$db_state); |
|
353 | + update_option(EE_Data_Migration_Manager::current_database_state, $db_state); |
|
354 | 354 | } |
355 | 355 | //in 4.1, $db_state would have only been a simple string like '4.1.0', |
356 | 356 | //but in 4.2+ it should be an array with at least key 'Core' and the value of that plugin's |
357 | 357 | //db, and possibly other keys for other addons like 'Calendar','Permissions',etc |
358 | - if( ! is_array($db_state)){ |
|
358 | + if ( ! is_array($db_state)) { |
|
359 | 359 | $db_state = array('Core'=>$db_state); |
360 | - update_option(EE_Data_Migration_Manager::current_database_state,$db_state); |
|
360 | + update_option(EE_Data_Migration_Manager::current_database_state, $db_state); |
|
361 | 361 | } |
362 | 362 | return $db_state; |
363 | 363 | } |
@@ -368,7 +368,7 @@ discard block |
||
368 | 368 | * or they don't apply), returns an empty array |
369 | 369 | * @return EE_Data_Migration_Script_Base[] |
370 | 370 | */ |
371 | - public function check_for_applicable_data_migration_scripts(){ |
|
371 | + public function check_for_applicable_data_migration_scripts() { |
|
372 | 372 | //get the option describing what options have already run |
373 | 373 | $scripts_ran = $this->get_data_migrations_ran(); |
374 | 374 | //$scripts_ran = array('4.1.0.core'=>array('monkey'=>null)); |
@@ -381,62 +381,62 @@ discard block |
||
381 | 381 | $iteration = 0; |
382 | 382 | $next_database_state_to_consider = $current_database_state; |
383 | 383 | $theoretical_database_state = NULL; |
384 | - do{ |
|
384 | + do { |
|
385 | 385 | //the next state after the currently-considered one will start off looking the same as the current, but we may make additions... |
386 | 386 | $theoretical_database_state = $next_database_state_to_consider; |
387 | 387 | //the next db state to consider is "what would the DB be like had we run all the scripts we found that applied last time?) |
388 | - foreach($script_class_and_filepaths_available as $classname => $filepath){ |
|
388 | + foreach ($script_class_and_filepaths_available as $classname => $filepath) { |
|
389 | 389 | |
390 | 390 | $migrates_to_version = $this->script_migrates_to_version($classname); |
391 | - $script_converts_plugin_slug = $migrates_to_version[ 'slug' ]; |
|
392 | - $script_converts_to_version = $migrates_to_version[ 'version' ]; |
|
391 | + $script_converts_plugin_slug = $migrates_to_version['slug']; |
|
392 | + $script_converts_to_version = $migrates_to_version['version']; |
|
393 | 393 | //check if this version script is DONE or not; or if it's never been ran |
394 | - if( ! $scripts_ran || |
|
394 | + if ( ! $scripts_ran || |
|
395 | 395 | ! isset($scripts_ran[$script_converts_plugin_slug]) || |
396 | - ! isset($scripts_ran[$script_converts_plugin_slug][$script_converts_to_version])){ |
|
396 | + ! isset($scripts_ran[$script_converts_plugin_slug][$script_converts_to_version])) { |
|
397 | 397 | //we haven't ran this conversion script before |
398 | 398 | //now check if it applies... note that we've added an autoloader for it on get_all_data_migration_scripts_available |
399 | 399 | $script = new $classname; |
400 | 400 | /* @var $script EE_Data_Migration_Script_Base */ |
401 | 401 | $can_migrate = $script->can_migrate_from_version($theoretical_database_state); |
402 | - if($can_migrate){ |
|
402 | + if ($can_migrate) { |
|
403 | 403 | $script_classes_that_should_run_per_iteration[$iteration][$script->priority()][] = $script; |
404 | 404 | $migrates_to_version = $script->migrates_to_version(); |
405 | - $next_database_state_to_consider[ $migrates_to_version[ 'slug' ] ] = $migrates_to_version[ 'version' ]; |
|
405 | + $next_database_state_to_consider[$migrates_to_version['slug']] = $migrates_to_version['version']; |
|
406 | 406 | unset($script_class_and_filepaths_available[$classname]); |
407 | 407 | } |
408 | - } elseif($scripts_ran[$script_converts_plugin_slug][$script_converts_to_version] instanceof EE_Data_Migration_Script_Base){ |
|
408 | + } elseif ($scripts_ran[$script_converts_plugin_slug][$script_converts_to_version] instanceof EE_Data_Migration_Script_Base) { |
|
409 | 409 | //this script has been ran, or at least started |
410 | 410 | $script = $scripts_ran[$script_converts_plugin_slug][$script_converts_to_version]; |
411 | - if( $script->get_status() != self::status_completed){ |
|
411 | + if ($script->get_status() != self::status_completed) { |
|
412 | 412 | //this script is already underway... keep going with it |
413 | 413 | $script_classes_that_should_run_per_iteration[$iteration][$script->priority()][] = $script; |
414 | 414 | $migrates_to_version = $script->migrates_to_version(); |
415 | - $next_database_state_to_consider[ $migrates_to_version[ 'slug' ] ] = $migrates_to_version[ 'version' ]; |
|
415 | + $next_database_state_to_consider[$migrates_to_version['slug']] = $migrates_to_version['version']; |
|
416 | 416 | unset($script_class_and_filepaths_available[$classname]); |
417 | - }else{ |
|
417 | + } else { |
|
418 | 418 | //it must have a status that indicates it has finished, so we don't want to try and run it again |
419 | 419 | } |
420 | - }else{ |
|
420 | + } else { |
|
421 | 421 | //it exists but it's not a proper data migration script |
422 | 422 | //maybe the script got renamed? or was simply removed from EE? |
423 | 423 | //either way, its certainly not runnable! |
424 | 424 | } |
425 | 425 | } |
426 | 426 | $iteration++; |
427 | - }while( $next_database_state_to_consider != $theoretical_database_state && $iteration<6); |
|
427 | + }while ($next_database_state_to_consider != $theoretical_database_state && $iteration < 6); |
|
428 | 428 | //ok we have all the scripts that should run, now let's make them into flat array |
429 | 429 | $scripts_that_should_run = array(); |
430 | - foreach($script_classes_that_should_run_per_iteration as $scripts_at_priority){ |
|
430 | + foreach ($script_classes_that_should_run_per_iteration as $scripts_at_priority) { |
|
431 | 431 | ksort($scripts_at_priority); |
432 | - foreach($scripts_at_priority as $scripts){ |
|
433 | - foreach($scripts as $script){ |
|
432 | + foreach ($scripts_at_priority as $scripts) { |
|
433 | + foreach ($scripts as $script) { |
|
434 | 434 | $scripts_that_should_run[get_class($script)] = $script; |
435 | 435 | } |
436 | 436 | } |
437 | 437 | } |
438 | 438 | |
439 | - do_action( 'AHEE__EE_Data_Migration_Manager__check_for_applicable_data_migration_scripts__scripts_that_should_run', $scripts_that_should_run ); |
|
439 | + do_action('AHEE__EE_Data_Migration_Manager__check_for_applicable_data_migration_scripts__scripts_that_should_run', $scripts_that_should_run); |
|
440 | 440 | return $scripts_that_should_run; |
441 | 441 | } |
442 | 442 | |
@@ -450,14 +450,14 @@ discard block |
||
450 | 450 | * @param bool $include_completed_scripts |
451 | 451 | * @return EE_Data_Migration_Script_Base |
452 | 452 | */ |
453 | - public function get_last_ran_script($include_completed_scripts = false){ |
|
453 | + public function get_last_ran_script($include_completed_scripts = false) { |
|
454 | 454 | //make sure we've setup the class properties _last_ran_script and _last_ran_incomplete_script |
455 | - if( ! $this->_data_migrations_ran){ |
|
455 | + if ( ! $this->_data_migrations_ran) { |
|
456 | 456 | $this->get_data_migrations_ran(); |
457 | 457 | } |
458 | - if($include_completed_scripts){ |
|
458 | + if ($include_completed_scripts) { |
|
459 | 459 | return $this->_last_ran_script; |
460 | - }else{ |
|
460 | + } else { |
|
461 | 461 | return $this->_last_ran_incomplete_script; |
462 | 462 | } |
463 | 463 | } |
@@ -480,19 +480,19 @@ discard block |
||
480 | 480 | * @type string $message string describing what was done during this step |
481 | 481 | * } |
482 | 482 | */ |
483 | - public function migration_step( $step_size = 0 ){ |
|
483 | + public function migration_step($step_size = 0) { |
|
484 | 484 | |
485 | 485 | //bandaid fix for issue https://events.codebasehq.com/projects/event-espresso/tickets/7535 |
486 | - if ( class_exists( 'EE_CPT_Strategy' ) ) { |
|
487 | - remove_action( 'pre_get_posts', array( EE_CPT_Strategy::instance(), 'pre_get_posts' ), 5 ); |
|
486 | + if (class_exists('EE_CPT_Strategy')) { |
|
487 | + remove_action('pre_get_posts', array(EE_CPT_Strategy::instance(), 'pre_get_posts'), 5); |
|
488 | 488 | } |
489 | 489 | |
490 | - try{ |
|
490 | + try { |
|
491 | 491 | $currently_executing_script = $this->get_last_ran_script(); |
492 | - if( ! $currently_executing_script){ |
|
492 | + if ( ! $currently_executing_script) { |
|
493 | 493 | //Find the next script that needs to execute |
494 | 494 | $scripts = $this->check_for_applicable_data_migration_scripts(); |
495 | - if( ! $scripts ){ |
|
495 | + if ( ! $scripts) { |
|
496 | 496 | //huh, no more scripts to run... apparently we're done! |
497 | 497 | //but dont forget to make sure initial data is there |
498 | 498 | //we should be good to allow them to exit maintenance mode now |
@@ -513,18 +513,18 @@ discard block |
||
513 | 513 | //and add to the array/wp option showing the scripts ran |
514 | 514 | // $this->_data_migrations_ran[$this->script_migrates_to_version(get_class($currently_executing_script))] = $currently_executing_script; |
515 | 515 | $migrates_to = $this->script_migrates_to_version(get_class($currently_executing_script)); |
516 | - $plugin_slug = $migrates_to[ 'slug' ]; |
|
517 | - $version = $migrates_to[ 'version' ]; |
|
516 | + $plugin_slug = $migrates_to['slug']; |
|
517 | + $version = $migrates_to['version']; |
|
518 | 518 | $this->_data_migrations_ran[$plugin_slug][$version] = $currently_executing_script; |
519 | 519 | } |
520 | 520 | $current_script_name = get_class($currently_executing_script); |
521 | - }catch(Exception $e){ |
|
521 | + } catch (Exception $e) { |
|
522 | 522 | //an exception occurred while trying to get migration scripts |
523 | 523 | |
524 | - $message = sprintf( __("Error Message: %sStack Trace:%s", "event_espresso"), $e->getMessage() . '<br>', $e->getTraceAsString() ); |
|
524 | + $message = sprintf(__("Error Message: %sStack Trace:%s", "event_espresso"), $e->getMessage().'<br>', $e->getTraceAsString()); |
|
525 | 525 | //record it on the array of data migration scripts ran. This will be overwritten next time we try and try to run data migrations |
526 | 526 | //but that's ok-- it's just an FYI to support that we couldn't even run any data migrations |
527 | - $this->add_error_to_migrations_ran(sprintf(__("Could not run data migrations because: %s", "event_espresso"),$message)); |
|
527 | + $this->add_error_to_migrations_ran(sprintf(__("Could not run data migrations because: %s", "event_espresso"), $message)); |
|
528 | 528 | return array( |
529 | 529 | 'records_to_migrate'=>1, |
530 | 530 | 'records_migrated'=>0, |
@@ -534,16 +534,16 @@ discard block |
||
534 | 534 | ); |
535 | 535 | } |
536 | 536 | //ok so we definitely have a data migration script |
537 | - try{ |
|
537 | + try { |
|
538 | 538 | //how big of a bite do we want to take? Allow users to easily override via their wp-config |
539 | - if( ! absint( $step_size ) > 0 ){ |
|
540 | - $step_size = defined( 'EE_MIGRATION_STEP_SIZE' ) && absint( EE_MIGRATION_STEP_SIZE ) ? EE_MIGRATION_STEP_SIZE : EE_Data_Migration_Manager::step_size; |
|
539 | + if ( ! absint($step_size) > 0) { |
|
540 | + $step_size = defined('EE_MIGRATION_STEP_SIZE') && absint(EE_MIGRATION_STEP_SIZE) ? EE_MIGRATION_STEP_SIZE : EE_Data_Migration_Manager::step_size; |
|
541 | 541 | } |
542 | 542 | //do what we came to do! |
543 | 543 | $currently_executing_script->migration_step($step_size); |
544 | 544 | //can we wrap it up and verify default data? |
545 | 545 | $init_dbs = false; |
546 | - switch($currently_executing_script->get_status()){ |
|
546 | + switch ($currently_executing_script->get_status()) { |
|
547 | 547 | case EE_Data_Migration_Manager::status_continue: |
548 | 548 | $response_array = array( |
549 | 549 | 'records_to_migrate'=>$currently_executing_script->count_records_to_migrate(), |
@@ -555,16 +555,16 @@ discard block |
||
555 | 555 | case EE_Data_Migration_Manager::status_completed: |
556 | 556 | //ok so THAT script has completed |
557 | 557 | $this->update_current_database_state_to($this->script_migrates_to_version($current_script_name)); |
558 | - $response_array = array( |
|
558 | + $response_array = array( |
|
559 | 559 | 'records_to_migrate'=>$currently_executing_script->count_records_to_migrate(), |
560 | 560 | 'records_migrated'=>$currently_executing_script->count_records_migrated(), |
561 | 561 | 'status'=> EE_Data_Migration_Manager::status_completed, |
562 | 562 | 'message'=>$currently_executing_script->get_feedback_message(), |
563 | - 'script'=> sprintf(__("%s Completed",'event_espresso'),$currently_executing_script->pretty_name()) |
|
563 | + 'script'=> sprintf(__("%s Completed", 'event_espresso'), $currently_executing_script->pretty_name()) |
|
564 | 564 | ); |
565 | 565 | //check if there are any more after this one. |
566 | 566 | $scripts_remaining = $this->check_for_applicable_data_migration_scripts(); |
567 | - if( ! $scripts_remaining ){ |
|
567 | + if ( ! $scripts_remaining) { |
|
568 | 568 | //we should be good to allow them to exit maintenance mode now |
569 | 569 | EE_Maintenance_Mode::instance()->set_maintenance_level(intval(EE_Maintenance_Mode::level_0_not_in_maintenance)); |
570 | 570 | ////huh, no more scripts to run... apparently we're done! |
@@ -578,39 +578,39 @@ discard block |
||
578 | 578 | 'records_to_migrate'=>$currently_executing_script->count_records_to_migrate(), |
579 | 579 | 'records_migrated'=>$currently_executing_script->count_records_migrated(), |
580 | 580 | 'status'=> $currently_executing_script->get_status(), |
581 | - 'message'=> sprintf(__("Minor errors occurred during %s: %s", "event_espresso"), $currently_executing_script->pretty_name(), implode(", ",$currently_executing_script->get_errors())), |
|
581 | + 'message'=> sprintf(__("Minor errors occurred during %s: %s", "event_espresso"), $currently_executing_script->pretty_name(), implode(", ", $currently_executing_script->get_errors())), |
|
582 | 582 | 'script'=>$currently_executing_script->pretty_name() |
583 | 583 | ); |
584 | 584 | break; |
585 | 585 | } |
586 | - }catch(Exception $e){ |
|
586 | + } catch (Exception $e) { |
|
587 | 587 | //ok so some exception was thrown which killed the data migration script |
588 | 588 | //double-check we have a real script |
589 | - if($currently_executing_script instanceof EE_Data_Migration_Script_Base){ |
|
589 | + if ($currently_executing_script instanceof EE_Data_Migration_Script_Base) { |
|
590 | 590 | $script_name = $currently_executing_script->pretty_name(); |
591 | 591 | $currently_executing_script->set_broken(); |
592 | 592 | $currently_executing_script->add_error($e->getMessage()); |
593 | - }else{ |
|
593 | + } else { |
|
594 | 594 | $script_name = __("Error getting Migration Script", "event_espresso"); |
595 | 595 | } |
596 | 596 | $response_array = array( |
597 | 597 | 'records_to_migrate'=>1, |
598 | 598 | 'records_migrated'=>0, |
599 | 599 | 'status'=>self::status_fatal_error, |
600 | - 'message'=> sprintf(__("A fatal error occurred during the migration: %s", "event_espresso"),$e->getMessage()), |
|
600 | + 'message'=> sprintf(__("A fatal error occurred during the migration: %s", "event_espresso"), $e->getMessage()), |
|
601 | 601 | 'script'=>$script_name |
602 | 602 | ); |
603 | 603 | } |
604 | 604 | $successful_save = $this->_save_migrations_ran(); |
605 | - if($successful_save !== TRUE){ |
|
605 | + if ($successful_save !== TRUE) { |
|
606 | 606 | //ok so the current wp option didn't save. that's tricky, because we'd like to update it |
607 | 607 | //and mark it as having a fatal error, but remember- WE CAN'T SAVE THIS WP OPTION! |
608 | 608 | //however, if we throw an exception, and return that, then the next request |
609 | 609 | //won't have as much info in it, and it may be able to save |
610 | - throw new EE_Error(sprintf(__("The error '%s' occurred updating the status of the migration. This is a FATAL ERROR, but the error is preventing the system from remembering that. Please contact event espresso support.", "event_espresso"),$successful_save)); |
|
610 | + throw new EE_Error(sprintf(__("The error '%s' occurred updating the status of the migration. This is a FATAL ERROR, but the error is preventing the system from remembering that. Please contact event espresso support.", "event_espresso"), $successful_save)); |
|
611 | 611 | } |
612 | 612 | //if we're all done, initialize EE plugins' default data etc. |
613 | - if( $init_dbs ) { |
|
613 | + if ($init_dbs) { |
|
614 | 614 | $this->initialize_db_for_enqueued_ee_plugins(); |
615 | 615 | } |
616 | 616 | return $response_array; |
@@ -628,23 +628,23 @@ discard block |
||
628 | 628 | * 'message'=>a string, containing any message you want to show to the user. We may decide to split this up into errors, notifications, and successes |
629 | 629 | * 'script'=>a pretty name of the script currently running |
630 | 630 | */ |
631 | - public function response_to_migration_ajax_request(){ |
|
631 | + public function response_to_migration_ajax_request() { |
|
632 | 632 | // //start output buffer just to make sure we don't mess up the json |
633 | 633 | ob_start(); |
634 | - try{ |
|
634 | + try { |
|
635 | 635 | $response = $this->migration_step(); |
636 | - }catch(Exception $e){ |
|
636 | + } catch (Exception $e) { |
|
637 | 637 | $response = array( |
638 | 638 | 'records_to_migrate'=>0, |
639 | 639 | 'records_migrated'=>0, |
640 | 640 | 'status'=> EE_Data_Migration_Manager::status_fatal_error, |
641 | - 'message'=> sprintf(__("Unknown fatal error occurred: %s", "event_espresso"),$e->getMessage()), |
|
641 | + 'message'=> sprintf(__("Unknown fatal error occurred: %s", "event_espresso"), $e->getMessage()), |
|
642 | 642 | 'script'=>'Unknown'); |
643 | 643 | $this->add_error_to_migrations_ran($e->getMessage()."; Stack trace:".$e->getTraceAsString()); |
644 | 644 | } |
645 | 645 | $warnings_etc = @ob_get_contents(); |
646 | 646 | ob_end_clean(); |
647 | - $response['message'] .=$warnings_etc; |
|
647 | + $response['message'] .= $warnings_etc; |
|
648 | 648 | return $response; |
649 | 649 | } |
650 | 650 | |
@@ -657,14 +657,14 @@ discard block |
||
657 | 657 | * } |
658 | 658 | * @return void |
659 | 659 | */ |
660 | - public function update_current_database_state_to($slug_and_version = null){ |
|
661 | - if( ! $slug_and_version ){ |
|
660 | + public function update_current_database_state_to($slug_and_version = null) { |
|
661 | + if ( ! $slug_and_version) { |
|
662 | 662 | //no version was provided, assume it should be at the current code version |
663 | 663 | $slug_and_version = array('slug' => 'Core', 'version' => espresso_version()); |
664 | 664 | } |
665 | 665 | $current_database_state = get_option(self::current_database_state); |
666 | - $current_database_state[ $slug_and_version[ 'slug' ] ]=$slug_and_version[ 'version' ]; |
|
667 | - update_option(self::current_database_state,$current_database_state); |
|
666 | + $current_database_state[$slug_and_version['slug']] = $slug_and_version['version']; |
|
667 | + update_option(self::current_database_state, $current_database_state); |
|
668 | 668 | } |
669 | 669 | |
670 | 670 | /** |
@@ -675,20 +675,20 @@ discard block |
||
675 | 675 | * } |
676 | 676 | * @return boolean |
677 | 677 | */ |
678 | - public function database_needs_updating_to( $slug_and_version ) { |
|
678 | + public function database_needs_updating_to($slug_and_version) { |
|
679 | 679 | |
680 | - $slug = $slug_and_version[ 'slug' ]; |
|
681 | - $version = $slug_and_version[ 'version' ]; |
|
680 | + $slug = $slug_and_version['slug']; |
|
681 | + $version = $slug_and_version['version']; |
|
682 | 682 | $current_database_state = get_option(self::current_database_state); |
683 | - if( ! isset( $current_database_state[ $slug ] ) ) { |
|
683 | + if ( ! isset($current_database_state[$slug])) { |
|
684 | 684 | return true; |
685 | - }else{ |
|
685 | + } else { |
|
686 | 686 | //just compare the first 3 parts of version string, eg "4.7.1", not "4.7.1.dev.032" because DBs shouldn't change on nano version changes |
687 | - $version_parts_current_db_state = array_slice( explode('.', $current_database_state[ $slug ] ), 0, 3); |
|
688 | - $version_parts_of_provided_db_state = array_slice( explode( '.', $version ), 0, 3 ); |
|
687 | + $version_parts_current_db_state = array_slice(explode('.', $current_database_state[$slug]), 0, 3); |
|
688 | + $version_parts_of_provided_db_state = array_slice(explode('.', $version), 0, 3); |
|
689 | 689 | $needs_updating = false; |
690 | - foreach($version_parts_current_db_state as $offset => $version_part_in_current_db_state ) { |
|
691 | - if( $version_part_in_current_db_state < $version_parts_of_provided_db_state[ $offset ] ) { |
|
690 | + foreach ($version_parts_current_db_state as $offset => $version_part_in_current_db_state) { |
|
691 | + if ($version_part_in_current_db_state < $version_parts_of_provided_db_state[$offset]) { |
|
692 | 692 | $needs_updating = true; |
693 | 693 | break; |
694 | 694 | } |
@@ -702,29 +702,29 @@ discard block |
||
702 | 702 | * in addons. Has the side effect of adding them for autoloading |
703 | 703 | * @return array keys are expected classnames, values are their filepaths |
704 | 704 | */ |
705 | - public function get_all_data_migration_scripts_available(){ |
|
706 | - if( ! $this->_data_migration_class_to_filepath_map){ |
|
705 | + public function get_all_data_migration_scripts_available() { |
|
706 | + if ( ! $this->_data_migration_class_to_filepath_map) { |
|
707 | 707 | $this->_data_migration_class_to_filepath_map = array(); |
708 | - foreach($this->get_data_migration_script_folders() as $folder_path){ |
|
709 | - if($folder_path[count($folder_path-1)] != DS ){ |
|
710 | - $folder_path.= DS; |
|
708 | + foreach ($this->get_data_migration_script_folders() as $folder_path) { |
|
709 | + if ($folder_path[count($folder_path - 1)] != DS) { |
|
710 | + $folder_path .= DS; |
|
711 | 711 | } |
712 | - $files = glob( $folder_path. '*.dms.php' ); |
|
712 | + $files = glob($folder_path.'*.dms.php'); |
|
713 | 713 | |
714 | - if ( empty( $files ) ) { |
|
714 | + if (empty($files)) { |
|
715 | 715 | continue; |
716 | 716 | } |
717 | 717 | |
718 | - foreach($files as $file){ |
|
719 | - $pos_of_last_slash = strrpos($file,DS); |
|
720 | - $classname = str_replace(".dms.php","", substr($file, $pos_of_last_slash+1)); |
|
721 | - $migrates_to = $this->script_migrates_to_version( $classname ); |
|
722 | - $slug = $migrates_to[ 'slug' ]; |
|
718 | + foreach ($files as $file) { |
|
719 | + $pos_of_last_slash = strrpos($file, DS); |
|
720 | + $classname = str_replace(".dms.php", "", substr($file, $pos_of_last_slash + 1)); |
|
721 | + $migrates_to = $this->script_migrates_to_version($classname); |
|
722 | + $slug = $migrates_to['slug']; |
|
723 | 723 | //check that the slug as contained in the DMS is associated with |
724 | 724 | //the slug of an addon or core |
725 | - if( $slug != 'Core' ){ |
|
726 | - if( ! EE_Registry::instance()->get_addon_by_name( $slug ) ) { |
|
727 | - EE_Error::doing_it_wrong(__FUNCTION__, sprintf( __( 'The data migration script "%s" migrates the "%s" data, but there is no EE addon with that name. There is only: %s. ', 'event_espresso' ),$classname,$slug,implode(",", array_keys( EE_Registry::instance()->get_addons_by_name() ) ) ), '4.3.0.alpha.019' ); |
|
725 | + if ($slug != 'Core') { |
|
726 | + if ( ! EE_Registry::instance()->get_addon_by_name($slug)) { |
|
727 | + EE_Error::doing_it_wrong(__FUNCTION__, sprintf(__('The data migration script "%s" migrates the "%s" data, but there is no EE addon with that name. There is only: %s. ', 'event_espresso'), $classname, $slug, implode(",", array_keys(EE_Registry::instance()->get_addons_by_name()))), '4.3.0.alpha.019'); |
|
728 | 728 | } |
729 | 729 | } |
730 | 730 | $this->_data_migration_class_to_filepath_map[$classname] = $file; |
@@ -744,7 +744,7 @@ discard block |
||
744 | 744 | * from each addon, and check if they need updating, |
745 | 745 | * @return boolean |
746 | 746 | */ |
747 | - public function addons_need_updating(){ |
|
747 | + public function addons_need_updating() { |
|
748 | 748 | return false; |
749 | 749 | } |
750 | 750 | /** |
@@ -753,25 +753,25 @@ discard block |
||
753 | 753 | * @param string $error_message |
754 | 754 | * @throws EE_Error |
755 | 755 | */ |
756 | - public function add_error_to_migrations_ran($error_message){ |
|
756 | + public function add_error_to_migrations_ran($error_message) { |
|
757 | 757 | //get last-ran migration script |
758 | 758 | global $wpdb; |
759 | - $last_migration_script_option = $wpdb->get_row("SELECT * FROM $wpdb->options WHERE option_name like '".EE_Data_Migration_Manager::data_migration_script_option_prefix."%' ORDER BY option_id DESC LIMIT 1",ARRAY_A); |
|
759 | + $last_migration_script_option = $wpdb->get_row("SELECT * FROM $wpdb->options WHERE option_name like '".EE_Data_Migration_Manager::data_migration_script_option_prefix."%' ORDER BY option_id DESC LIMIT 1", ARRAY_A); |
|
760 | 760 | |
761 | 761 | $last_ran_migration_script_properties = isset($last_migration_script_option['option_value']) ? maybe_unserialize($last_migration_script_option['option_value']) : null; |
762 | 762 | //now, tread lightly because we're here because a FATAL non-catchable error |
763 | 763 | //was thrown last time when we were trying to run a data migration script |
764 | 764 | //so the fatal error could have happened while getting the migration script |
765 | 765 | //or doing running it... |
766 | - $versions_migrated_to = isset($last_migration_script_option['option_name']) ? str_replace(EE_Data_Migration_Manager::data_migration_script_option_prefix,"",$last_migration_script_option['option_name']) : null; |
|
766 | + $versions_migrated_to = isset($last_migration_script_option['option_name']) ? str_replace(EE_Data_Migration_Manager::data_migration_script_option_prefix, "", $last_migration_script_option['option_name']) : null; |
|
767 | 767 | |
768 | 768 | //check if it THINKS its a data migration script and especially if it's one that HASN'T finished yet |
769 | 769 | //because if it has finished, then it obviously couldn't be the cause of this error, right? (because its all done) |
770 | - if(isset($last_ran_migration_script_properties['class']) && isset($last_ran_migration_script_properties['_status']) && $last_ran_migration_script_properties['_status'] != self::status_completed){ |
|
770 | + if (isset($last_ran_migration_script_properties['class']) && isset($last_ran_migration_script_properties['_status']) && $last_ran_migration_script_properties['_status'] != self::status_completed) { |
|
771 | 771 | //ok then just add this error to its list of errors |
772 | 772 | $last_ran_migration_script_properties['_errors'][] = $error_message; |
773 | 773 | $last_ran_migration_script_properties['_status'] = self::status_fatal_error; |
774 | - }else{ |
|
774 | + } else { |
|
775 | 775 | //so we don't even know which script was last running |
776 | 776 | //use the data migration error stub, which is designed specifically for this type of thing |
777 | 777 | $general_migration_error = new EE_DMS_Unknown_1_0_0(); |
@@ -781,39 +781,39 @@ discard block |
||
781 | 781 | $versions_migrated_to = 'Unknown.1.0.0'; |
782 | 782 | //now just to make sure appears as last (in case the were previously a fatal error like this) |
783 | 783 | //delete the old one |
784 | - delete_option( self::data_migration_script_option_prefix . $versions_migrated_to ); |
|
784 | + delete_option(self::data_migration_script_option_prefix.$versions_migrated_to); |
|
785 | 785 | } |
786 | - update_option(self::data_migration_script_option_prefix.$versions_migrated_to,$last_ran_migration_script_properties); |
|
786 | + update_option(self::data_migration_script_option_prefix.$versions_migrated_to, $last_ran_migration_script_properties); |
|
787 | 787 | |
788 | 788 | } |
789 | 789 | /** |
790 | 790 | * saves what data migrations have ran to the database |
791 | 791 | * @return mixed TRUE if successfully saved migrations ran, string if an error occurred |
792 | 792 | */ |
793 | - protected function _save_migrations_ran(){ |
|
794 | - if($this->_data_migrations_ran == null){ |
|
793 | + protected function _save_migrations_ran() { |
|
794 | + if ($this->_data_migrations_ran == null) { |
|
795 | 795 | $this->get_data_migrations_ran(); |
796 | 796 | } |
797 | 797 | //now, we don't want to save actual classes to the DB because that's messy |
798 | 798 | $successful_updates = true; |
799 | - foreach($this->_data_migrations_ran as $plugin_slug => $migrations_ran_for_plugin){ |
|
800 | - foreach($migrations_ran_for_plugin as $version_string => $array_or_migration_obj){ |
|
799 | + foreach ($this->_data_migrations_ran as $plugin_slug => $migrations_ran_for_plugin) { |
|
800 | + foreach ($migrations_ran_for_plugin as $version_string => $array_or_migration_obj) { |
|
801 | 801 | // echo "saving migration script to $version_string<br>"; |
802 | 802 | $plugin_slug_for_use_in_option_name = $plugin_slug."."; |
803 | 803 | $option_name = self::data_migration_script_option_prefix.$plugin_slug_for_use_in_option_name.$version_string; |
804 | 804 | $old_option_value = get_option($option_name); |
805 | - if($array_or_migration_obj instanceof EE_Data_Migration_Script_Base){ |
|
805 | + if ($array_or_migration_obj instanceof EE_Data_Migration_Script_Base) { |
|
806 | 806 | $script_array_for_saving = $array_or_migration_obj->properties_as_array(); |
807 | - if( $old_option_value != $script_array_for_saving){ |
|
808 | - $successful_updates = update_option($option_name,$script_array_for_saving); |
|
807 | + if ($old_option_value != $script_array_for_saving) { |
|
808 | + $successful_updates = update_option($option_name, $script_array_for_saving); |
|
809 | 809 | } |
810 | - }else{//we don't know what this array-thing is. So just save it as-is |
|
810 | + } else {//we don't know what this array-thing is. So just save it as-is |
|
811 | 811 | // $array_of_migrations[$version_string] = $array_or_migration_obj; |
812 | - if($old_option_value != $array_or_migration_obj){ |
|
813 | - $successful_updates = update_option($option_name,$array_or_migration_obj); |
|
812 | + if ($old_option_value != $array_or_migration_obj) { |
|
813 | + $successful_updates = update_option($option_name, $array_or_migration_obj); |
|
814 | 814 | } |
815 | 815 | } |
816 | - if( ! $successful_updates ){ |
|
816 | + if ( ! $successful_updates) { |
|
817 | 817 | global $wpdb; |
818 | 818 | return $wpdb->last_error; |
819 | 819 | } |
@@ -837,17 +837,17 @@ discard block |
||
837 | 837 | * @return EE_Data_Migration_Script_Base |
838 | 838 | * @throws EE_Error |
839 | 839 | */ |
840 | - function _instantiate_script_from_properties_array($properties_array){ |
|
841 | - if( ! isset($properties_array['class'])){ |
|
842 | - throw new EE_Error(sprintf(__("Properties array has no 'class' properties. Here's what it has: %s", "event_espresso"),implode(",",$properties_array))); |
|
840 | + function _instantiate_script_from_properties_array($properties_array) { |
|
841 | + if ( ! isset($properties_array['class'])) { |
|
842 | + throw new EE_Error(sprintf(__("Properties array has no 'class' properties. Here's what it has: %s", "event_espresso"), implode(",", $properties_array))); |
|
843 | 843 | } |
844 | 844 | $class_name = $properties_array['class']; |
845 | - if( ! class_exists($class_name)){ |
|
846 | - throw new EE_Error(sprintf(__("There is no migration script named %s", "event_espresso"),$class_name)); |
|
845 | + if ( ! class_exists($class_name)) { |
|
846 | + throw new EE_Error(sprintf(__("There is no migration script named %s", "event_espresso"), $class_name)); |
|
847 | 847 | } |
848 | 848 | $class = new $class_name; |
849 | - if( ! $class instanceof EE_Data_Migration_Script_Base){ |
|
850 | - throw new EE_Error(sprintf(__("Class '%s' is supposed to be a migration script. Its not, its a '%s'", "event_espresso"),$class_name,get_class($class))); |
|
849 | + if ( ! $class instanceof EE_Data_Migration_Script_Base) { |
|
850 | + throw new EE_Error(sprintf(__("Class '%s' is supposed to be a migration script. Its not, its a '%s'", "event_espresso"), $class_name, get_class($class))); |
|
851 | 851 | } |
852 | 852 | $class->instantiate_from_array_of_properties($properties_array); |
853 | 853 | return $class; |
@@ -859,25 +859,25 @@ discard block |
||
859 | 859 | * @param string $plugin_slug the slug for the ee plugin we are searching for. Default is 'Core' |
860 | 860 | * @return string |
861 | 861 | */ |
862 | - public function get_most_up_to_date_dms($plugin_slug = 'Core'){ |
|
862 | + public function get_most_up_to_date_dms($plugin_slug = 'Core') { |
|
863 | 863 | $class_to_filepath_map = $this->get_all_data_migration_scripts_available(); |
864 | 864 | $most_up_to_date_dms_classname = NULL; |
865 | - foreach($class_to_filepath_map as $classname => $filepath){ |
|
866 | - if($most_up_to_date_dms_classname === NULL){ |
|
865 | + foreach ($class_to_filepath_map as $classname => $filepath) { |
|
866 | + if ($most_up_to_date_dms_classname === NULL) { |
|
867 | 867 | $migrates_to = $this->script_migrates_to_version($classname); |
868 | - $this_plugin_slug = $migrates_to[ 'slug' ]; |
|
868 | + $this_plugin_slug = $migrates_to['slug']; |
|
869 | 869 | // $version_string = $migrates_to[ 'version' ]; |
870 | 870 | // $details = $this->parse_dms_classname($classname); |
871 | - if($this_plugin_slug == $plugin_slug){ |
|
871 | + if ($this_plugin_slug == $plugin_slug) { |
|
872 | 872 | //if it's for core, it wins |
873 | 873 | $most_up_to_date_dms_classname = $classname; |
874 | 874 | } |
875 | 875 | //if it wasn't for core, we must keep searching for one that is! |
876 | 876 | continue; |
877 | - }else{ |
|
878 | - $champion_migrates_to= $this->script_migrates_to_version($most_up_to_date_dms_classname); |
|
877 | + } else { |
|
878 | + $champion_migrates_to = $this->script_migrates_to_version($most_up_to_date_dms_classname); |
|
879 | 879 | $contender_migrates_to = $this->script_migrates_to_version($classname); |
880 | - if($contender_migrates_to[ 'slug' ] == $plugin_slug && version_compare($champion_migrates_to[ 'version' ], $contender_migrates_to[ 'version' ], '<')){ |
|
880 | + if ($contender_migrates_to['slug'] == $plugin_slug && version_compare($champion_migrates_to['version'], $contender_migrates_to['version'], '<')) { |
|
881 | 881 | //so the contenders version is higher and its for Core |
882 | 882 | $most_up_to_date_dms_classname = $classname; |
883 | 883 | } |
@@ -897,11 +897,11 @@ discard block |
||
897 | 897 | * @param string $plugin_slug like 'Core', 'Mailchimp', 'Calendar', etc |
898 | 898 | * @return EE_Data_Migration_Script_Base |
899 | 899 | */ |
900 | - public function get_migration_ran( $version, $plugin_slug = 'Core' ) { |
|
900 | + public function get_migration_ran($version, $plugin_slug = 'Core') { |
|
901 | 901 | $migrations_ran = $this->get_data_migrations_ran(); |
902 | - if( isset( $migrations_ran[ $plugin_slug ] ) && isset( $migrations_ran[ $plugin_slug ][ $version ] ) ){ |
|
903 | - return $migrations_ran[ $plugin_slug ][ $version ]; |
|
904 | - }else{ |
|
902 | + if (isset($migrations_ran[$plugin_slug]) && isset($migrations_ran[$plugin_slug][$version])) { |
|
903 | + return $migrations_ran[$plugin_slug][$version]; |
|
904 | + } else { |
|
905 | 905 | return NULL; |
906 | 906 | } |
907 | 907 | } |
@@ -913,20 +913,20 @@ discard block |
||
913 | 913 | * @return bool |
914 | 914 | * @throws \EE_Error |
915 | 915 | */ |
916 | - public function reattempt(){ |
|
916 | + public function reattempt() { |
|
917 | 917 | //find if the last-ran script was borked |
918 | 918 | //set it as being non-borked (we shouldn't ever get DMSs that we don't recognize) |
919 | 919 | //add an 'error' saying that we attempted to reset |
920 | 920 | //does it have a stage that was borked too? if so make it no longer borked |
921 | 921 | //add an 'error' saying we attempted to reset |
922 | 922 | $last_ran_script = $this->get_last_ran_script(); |
923 | - if( $last_ran_script instanceof EE_DMS_Unknown_1_0_0 ){ |
|
923 | + if ($last_ran_script instanceof EE_DMS_Unknown_1_0_0) { |
|
924 | 924 | //if it was an error DMS, just mark it as complete (if another error occurs it will overwrite it) |
925 | 925 | $last_ran_script->set_completed(); |
926 | - }elseif( $last_ran_script instanceof EE_Data_Migration_Script_Base ) { |
|
926 | + }elseif ($last_ran_script instanceof EE_Data_Migration_Script_Base) { |
|
927 | 927 | $last_ran_script->reattempt(); |
928 | - }else{ |
|
929 | - throw new EE_Error( sprintf( __( 'Unable to reattempt the last ran migration script because it was not a valid migration script. || It was %s', 'event_espresso' ), print_r( $last_ran_script ) ) ); |
|
928 | + } else { |
|
929 | + throw new EE_Error(sprintf(__('Unable to reattempt the last ran migration script because it was not a valid migration script. || It was %s', 'event_espresso'), print_r($last_ran_script))); |
|
930 | 930 | } |
931 | 931 | return $this->_save_migrations_ran(); |
932 | 932 | } |
@@ -936,19 +936,19 @@ discard block |
||
936 | 936 | * @param string $plugin_slug like 'Core', 'Mailchimp', 'Calendar', etc |
937 | 937 | * @return boolean |
938 | 938 | */ |
939 | - public function migration_has_ran( $version, $plugin_slug = 'Core' ) { |
|
940 | - return $this->get_migration_ran( $version, $plugin_slug ) !== NULL; |
|
939 | + public function migration_has_ran($version, $plugin_slug = 'Core') { |
|
940 | + return $this->get_migration_ran($version, $plugin_slug) !== NULL; |
|
941 | 941 | } |
942 | 942 | /** |
943 | 943 | * Enqueues this ee plugin to have its data initialized |
944 | 944 | * @param string $plugin_slug either 'Core' or EE_Addon::name()'s return value |
945 | 945 | */ |
946 | - public function enqueue_db_initialization_for( $plugin_slug ) { |
|
946 | + public function enqueue_db_initialization_for($plugin_slug) { |
|
947 | 947 | $queue = $this->get_db_initialization_queue(); |
948 | - if( ! in_array( $plugin_slug, $queue ) ) { |
|
948 | + if ( ! in_array($plugin_slug, $queue)) { |
|
949 | 949 | $queue[] = $plugin_slug; |
950 | 950 | } |
951 | - update_option( self::db_init_queue_option_name, $queue ); |
|
951 | + update_option(self::db_init_queue_option_name, $queue); |
|
952 | 952 | } |
953 | 953 | /** |
954 | 954 | * Calls EE_Addon::initialize_db_if_no_migrations_required() on each addon |
@@ -958,26 +958,26 @@ discard block |
||
958 | 958 | public function initialize_db_for_enqueued_ee_plugins() { |
959 | 959 | // EEH_Debug_Tools::instance()->start_timer( 'initialize_db_for_enqueued_ee_plugins' ); |
960 | 960 | $queue = $this->get_db_initialization_queue(); |
961 | - foreach( $queue as $plugin_slug ) { |
|
962 | - $most_up_to_date_dms = $this->get_most_up_to_date_dms( $plugin_slug ); |
|
963 | - if( ! $most_up_to_date_dms ) { |
|
961 | + foreach ($queue as $plugin_slug) { |
|
962 | + $most_up_to_date_dms = $this->get_most_up_to_date_dms($plugin_slug); |
|
963 | + if ( ! $most_up_to_date_dms) { |
|
964 | 964 | //if there is NO DMS for this plugin, obviously there's no schema to verify anyways |
965 | 965 | $verify_db = false; |
966 | - }else{ |
|
967 | - $most_up_to_date_dms_migrates_to = $this->script_migrates_to_version( $most_up_to_date_dms ); |
|
968 | - $verify_db = $this->database_needs_updating_to( $most_up_to_date_dms_migrates_to ); |
|
966 | + } else { |
|
967 | + $most_up_to_date_dms_migrates_to = $this->script_migrates_to_version($most_up_to_date_dms); |
|
968 | + $verify_db = $this->database_needs_updating_to($most_up_to_date_dms_migrates_to); |
|
969 | 969 | } |
970 | - if( $plugin_slug == 'Core' ){ |
|
970 | + if ($plugin_slug == 'Core') { |
|
971 | 971 | EE_System::instance()->initialize_db_if_no_migrations_required( |
972 | 972 | false, |
973 | 973 | $verify_db |
974 | 974 | ); |
975 | - }else{ |
|
975 | + } else { |
|
976 | 976 | //just loop through the addons to make sure their database is setup |
977 | - foreach( EE_Registry::instance()->addons as $addon ) { |
|
978 | - if( $addon->name() == $plugin_slug ) { |
|
977 | + foreach (EE_Registry::instance()->addons as $addon) { |
|
978 | + if ($addon->name() == $plugin_slug) { |
|
979 | 979 | |
980 | - $addon->initialize_db_if_no_migrations_required( $verify_db ); |
|
980 | + $addon->initialize_db_if_no_migrations_required($verify_db); |
|
981 | 981 | break; |
982 | 982 | } |
983 | 983 | } |
@@ -987,7 +987,7 @@ discard block |
||
987 | 987 | // EEH_Debug_Tools::instance()->show_times(); |
988 | 988 | //because we just initialized the DBs for the enqueued ee plugins |
989 | 989 | //we don't need to keep remembering which ones needed to be initialized |
990 | - delete_option( self::db_init_queue_option_name ); |
|
990 | + delete_option(self::db_init_queue_option_name); |
|
991 | 991 | } |
992 | 992 | |
993 | 993 | /** |
@@ -996,7 +996,7 @@ discard block |
||
996 | 996 | * 'Core', or the return value of EE_Addon::name() for an addon |
997 | 997 | * @return array |
998 | 998 | */ |
999 | - public function get_db_initialization_queue(){ |
|
1000 | - return get_option ( self::db_init_queue_option_name, array() ); |
|
999 | + public function get_db_initialization_queue() { |
|
1000 | + return get_option(self::db_init_queue_option_name, array()); |
|
1001 | 1001 | } |
1002 | 1002 | } |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Event Espresso |
4 | 6 | * |
@@ -60,12 +62,14 @@ discard block |
||
60 | 62 | */ |
61 | 63 | private static function _maybe_get_langfile() { |
62 | 64 | self::$_lang = get_locale(); |
63 | - if ( $has_check = get_option( 'ee_lang_check_' . self::$_lang . '_' . EVENT_ESPRESSO_VERSION ) || empty( self::$_lang ) ) |
|
64 | - return; |
|
65 | + if ( $has_check = get_option( 'ee_lang_check_' . self::$_lang . '_' . EVENT_ESPRESSO_VERSION ) || empty( self::$_lang ) ) { |
|
66 | + return; |
|
67 | + } |
|
65 | 68 | |
66 | 69 | //if lang is en_US or empty then lets just get out. (Event Espresso core is en_US) |
67 | - if ( empty( self::$_lang ) || self::$_lang == 'en_US' ) |
|
68 | - return; |
|
70 | + if ( empty( self::$_lang ) || self::$_lang == 'en_US' ) { |
|
71 | + return; |
|
72 | + } |
|
69 | 73 | |
70 | 74 | //made it here so let's get the file from the github repo |
71 | 75 | $sideloader_args = array( |
@@ -39,12 +39,12 @@ discard block |
||
39 | 39 | public static function load_textdomain() { |
40 | 40 | self::_maybe_get_langfile(); |
41 | 41 | //now load the textdomain |
42 | - if ( ! empty( self::$_lang ) && is_readable( EE_LANGUAGES_SAFE_DIR . 'event_espresso-' . self::$_lang . '.mo' ) ) { |
|
42 | + if ( ! empty(self::$_lang) && is_readable(EE_LANGUAGES_SAFE_DIR.'event_espresso-'.self::$_lang.'.mo')) { |
|
43 | 43 | load_plugin_textdomain('event_espresso', FALSE, EE_LANGUAGES_SAFE_LOC); |
44 | - } else if ( ! empty( self::$_lang ) && is_readable( EE_LANGUAGES_SAFE_DIR . 'event-espresso-4-' . self::$_lang . '.mo' ) ) { |
|
45 | - load_textdomain( 'event_espresso', EE_LANGUAGES_SAFE_DIR . 'event-espresso-4-' . self::$_lang . '.mo' ); |
|
44 | + } else if ( ! empty(self::$_lang) && is_readable(EE_LANGUAGES_SAFE_DIR.'event-espresso-4-'.self::$_lang.'.mo')) { |
|
45 | + load_textdomain('event_espresso', EE_LANGUAGES_SAFE_DIR.'event-espresso-4-'.self::$_lang.'.mo'); |
|
46 | 46 | } else { |
47 | - load_plugin_textdomain( 'event_espresso', FALSE, dirname( EE_PLUGIN_BASENAME ) . '/languages/'); |
|
47 | + load_plugin_textdomain('event_espresso', FALSE, dirname(EE_PLUGIN_BASENAME).'/languages/'); |
|
48 | 48 | } |
49 | 49 | } |
50 | 50 | |
@@ -59,24 +59,24 @@ discard block |
||
59 | 59 | */ |
60 | 60 | private static function _maybe_get_langfile() { |
61 | 61 | self::$_lang = get_locale(); |
62 | - if ( $has_check = get_option( 'ee_lang_check_' . self::$_lang . '_' . EVENT_ESPRESSO_VERSION ) || empty( self::$_lang ) ) |
|
62 | + if ($has_check = get_option('ee_lang_check_'.self::$_lang.'_'.EVENT_ESPRESSO_VERSION) || empty(self::$_lang)) |
|
63 | 63 | return; |
64 | 64 | |
65 | 65 | //if lang is en_US or empty then lets just get out. (Event Espresso core is en_US) |
66 | - if ( empty( self::$_lang ) || self::$_lang == 'en_US' ) |
|
66 | + if (empty(self::$_lang) || self::$_lang == 'en_US') |
|
67 | 67 | return; |
68 | 68 | |
69 | 69 | //made it here so let's get the file from the github repo |
70 | 70 | $sideloader_args = array( |
71 | - '_upload_to' => EE_PLUGIN_DIR_PATH . 'languages/', |
|
72 | - '_upload_from' => 'https://github.com/eventespresso/languages-ee4/blob/master/event_espresso-' . self::$_lang . '.mo?raw=true', |
|
73 | - '_new_file_name' => 'event_espresso-' . self::$_lang . '.mo' |
|
71 | + '_upload_to' => EE_PLUGIN_DIR_PATH.'languages/', |
|
72 | + '_upload_from' => 'https://github.com/eventespresso/languages-ee4/blob/master/event_espresso-'.self::$_lang.'.mo?raw=true', |
|
73 | + '_new_file_name' => 'event_espresso-'.self::$_lang.'.mo' |
|
74 | 74 | ); |
75 | 75 | |
76 | 76 | |
77 | - $sideloader = EE_Registry::instance()->load_helper('Sideloader', $sideloader_args, FALSE ); |
|
77 | + $sideloader = EE_Registry::instance()->load_helper('Sideloader', $sideloader_args, FALSE); |
|
78 | 78 | |
79 | 79 | $sideloader->sideload(); |
80 | - update_option( 'ee_lang_check_' . self::$_lang . '_' . EVENT_ESPRESSO_VERSION, 1 ); |
|
80 | + update_option('ee_lang_check_'.self::$_lang.'_'.EVENT_ESPRESSO_VERSION, 1); |
|
81 | 81 | } |
82 | 82 | } //end EE_Load_Textdomain |
@@ -121,7 +121,7 @@ |
||
121 | 121 | |
122 | 122 | /** |
123 | 123 | * resolve_route |
124 | - * |
|
124 | + * |
|
125 | 125 | * this method simply takes a valid route, and resolves what module class method the route points to |
126 | 126 | * |
127 | 127 | * @access public |
@@ -61,31 +61,31 @@ discard block |
||
61 | 61 | * @param WP_Query $WP_Query |
62 | 62 | * @return string | NULL |
63 | 63 | */ |
64 | - public function get_route( WP_Query $WP_Query ) { |
|
64 | + public function get_route(WP_Query $WP_Query) { |
|
65 | 65 | $this->WP_Query = $WP_Query; |
66 | 66 | // assume this if first route being called |
67 | 67 | $previous_route = FALSE; |
68 | 68 | // but is it really ??? |
69 | - if ( ! empty( self::$_previous_routes )) { |
|
69 | + if ( ! empty(self::$_previous_routes)) { |
|
70 | 70 | // get last run route |
71 | - $previous_routes = array_values( self::$_previous_routes ); |
|
72 | - $previous_route = array_pop( $previous_routes ); |
|
71 | + $previous_routes = array_values(self::$_previous_routes); |
|
72 | + $previous_route = array_pop($previous_routes); |
|
73 | 73 | } |
74 | 74 | // has another route already been run ? |
75 | - if ( $previous_route ) { |
|
75 | + if ($previous_route) { |
|
76 | 76 | // check if forwarding has been set |
77 | - $current_route = $this->get_forward( $previous_route ); |
|
77 | + $current_route = $this->get_forward($previous_route); |
|
78 | 78 | try { |
79 | 79 | //check for recursive forwarding |
80 | - if ( isset( self::$_previous_routes[ $current_route ] )) { |
|
80 | + if (isset(self::$_previous_routes[$current_route])) { |
|
81 | 81 | throw new EE_Error( |
82 | 82 | sprintf( |
83 | - __('An error occurred. The %s route has already been called, and therefore can not be forwarded to, because an infinite loop would be created and break the interweb.','event_espresso'), |
|
83 | + __('An error occurred. The %s route has already been called, and therefore can not be forwarded to, because an infinite loop would be created and break the interweb.', 'event_espresso'), |
|
84 | 84 | $current_route |
85 | 85 | ) |
86 | 86 | ); |
87 | 87 | } |
88 | - } catch ( EE_Error $e ) { |
|
88 | + } catch (EE_Error $e) { |
|
89 | 89 | $e->get_error(); |
90 | 90 | return NULL; |
91 | 91 | } |
@@ -95,13 +95,13 @@ discard block |
||
95 | 95 | // grab all routes |
96 | 96 | $routes = EE_Registry::instance()->CFG->get_routes(); |
97 | 97 | //d( $routes ); |
98 | - foreach( $routes as $key => $route ) { |
|
98 | + foreach ($routes as $key => $route) { |
|
99 | 99 | // check request for module route |
100 | - if ( EE_Registry::instance()->REQ->is_set( $key )) { |
|
100 | + if (EE_Registry::instance()->REQ->is_set($key)) { |
|
101 | 101 | //echo '<b style="color:#2EA2CC;">key : <span style="color:#E76700">' . $key . '</span></b><br />'; |
102 | - $current_route = sanitize_text_field( EE_Registry::instance()->REQ->get( $key )); |
|
103 | - if ( $current_route ) { |
|
104 | - $current_route = array( $key, $current_route ); |
|
102 | + $current_route = sanitize_text_field(EE_Registry::instance()->REQ->get($key)); |
|
103 | + if ($current_route) { |
|
104 | + $current_route = array($key, $current_route); |
|
105 | 105 | //echo '<b style="color:#2EA2CC;">current_route : <span style="color:#E76700">' . $current_route . '</span></b><br />'; |
106 | 106 | break; |
107 | 107 | } |
@@ -109,7 +109,7 @@ discard block |
||
109 | 109 | } |
110 | 110 | } |
111 | 111 | // sorry, but I can't read what you route ! |
112 | - if ( empty( $current_route )) { |
|
112 | + if (empty($current_route)) { |
|
113 | 113 | return NULL; |
114 | 114 | } |
115 | 115 | //add route to previous routes array |
@@ -129,46 +129,46 @@ discard block |
||
129 | 129 | * @param string $current_route |
130 | 130 | * @return mixed EED_Module | boolean |
131 | 131 | */ |
132 | - public function resolve_route( $key, $current_route ) { |
|
132 | + public function resolve_route($key, $current_route) { |
|
133 | 133 | // get module method that route has been mapped to |
134 | - $module_method = EE_Config::get_route( $current_route, $key ); |
|
134 | + $module_method = EE_Config::get_route($current_route, $key); |
|
135 | 135 | //EEH_Debug_Tools::printr( $module_method, '$module_method <br /><span style="font-size:10px;font-weight:normal;">' . __FILE__ . '<br />line no: ' . __LINE__ . '</span>', 'auto' ); |
136 | 136 | // verify result was returned |
137 | - if ( empty( $module_method )) { |
|
138 | - $msg = sprintf( __( 'The requested route %s could not be mapped to any registered modules.', 'event_espresso' ), $current_route ); |
|
139 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
137 | + if (empty($module_method)) { |
|
138 | + $msg = sprintf(__('The requested route %s could not be mapped to any registered modules.', 'event_espresso'), $current_route); |
|
139 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
140 | 140 | return FALSE; |
141 | 141 | } |
142 | 142 | // verify that result is an array |
143 | - if ( ! is_array( $module_method )) { |
|
144 | - $msg = sprintf( __( 'The %s route has not been properly registered.', 'event_espresso' ), $current_route ); |
|
145 | - EE_Error::add_error( $msg . '||' . $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
143 | + if ( ! is_array($module_method)) { |
|
144 | + $msg = sprintf(__('The %s route has not been properly registered.', 'event_espresso'), $current_route); |
|
145 | + EE_Error::add_error($msg.'||'.$msg, __FILE__, __FUNCTION__, __LINE__); |
|
146 | 146 | return FALSE; |
147 | 147 | } |
148 | 148 | // grab module name |
149 | 149 | $module_name = $module_method[0]; |
150 | 150 | // verify that a class method was registered properly |
151 | - if ( ! isset( $module_method[1] )) { |
|
152 | - $msg = sprintf( __( 'A class method for the %s route has not been properly registered.', 'event_espresso' ), $current_route ); |
|
153 | - EE_Error::add_error( $msg . '||' . $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
151 | + if ( ! isset($module_method[1])) { |
|
152 | + $msg = sprintf(__('A class method for the %s route has not been properly registered.', 'event_espresso'), $current_route); |
|
153 | + EE_Error::add_error($msg.'||'.$msg, __FILE__, __FUNCTION__, __LINE__); |
|
154 | 154 | return FALSE; |
155 | 155 | } |
156 | 156 | // grab method |
157 | 157 | $method = $module_method[1]; |
158 | 158 | // verify that class exists |
159 | - if ( ! class_exists( $module_name )) { |
|
160 | - $msg = sprintf( __( 'The requested %s class could not be found.', 'event_espresso' ), $module_name ); |
|
161 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
159 | + if ( ! class_exists($module_name)) { |
|
160 | + $msg = sprintf(__('The requested %s class could not be found.', 'event_espresso'), $module_name); |
|
161 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
162 | 162 | return FALSE; |
163 | 163 | } |
164 | 164 | // verify that method exists |
165 | - if ( ! method_exists( $module_name, $method )) { |
|
166 | - $msg = sprintf( __( 'The class method %s for the %s route is in invalid.', 'event_espresso' ), $method, $current_route ); |
|
167 | - EE_Error::add_error( $msg . '||' . $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
165 | + if ( ! method_exists($module_name, $method)) { |
|
166 | + $msg = sprintf(__('The class method %s for the %s route is in invalid.', 'event_espresso'), $method, $current_route); |
|
167 | + EE_Error::add_error($msg.'||'.$msg, __FILE__, __FUNCTION__, __LINE__); |
|
168 | 168 | return FALSE; |
169 | 169 | } |
170 | 170 | // instantiate module and call route method |
171 | - return $this->_module_router( $module_name, $method ); |
|
171 | + return $this->_module_router($module_name, $method); |
|
172 | 172 | } |
173 | 173 | |
174 | 174 | |
@@ -182,16 +182,16 @@ discard block |
||
182 | 182 | * @param string $module_name |
183 | 183 | * @return EED_Module | NULL |
184 | 184 | */ |
185 | - public static function module_factory( $module_name ) { |
|
186 | - if ( $module_name == 'EED_Module' ) { |
|
187 | - EE_Error::add_error( sprintf( __( 'EED_Module is an abstract parent class an can not be instantiated. Please provide a proper module name.', 'event_espresso' ), $module_name ), __FILE__, __FUNCTION__, __LINE__ ); |
|
185 | + public static function module_factory($module_name) { |
|
186 | + if ($module_name == 'EED_Module') { |
|
187 | + EE_Error::add_error(sprintf(__('EED_Module is an abstract parent class an can not be instantiated. Please provide a proper module name.', 'event_espresso'), $module_name), __FILE__, __FUNCTION__, __LINE__); |
|
188 | 188 | return NULL; |
189 | 189 | } |
190 | 190 | // let's pause to reflect on this... |
191 | - $mod_reflector = new ReflectionClass( $module_name ); |
|
191 | + $mod_reflector = new ReflectionClass($module_name); |
|
192 | 192 | // ensure that class is actually a module |
193 | - if ( ! $mod_reflector->isSubclassOf( 'EED_Module' )) { |
|
194 | - EE_Error::add_error( sprintf( __( 'The requested %s module is not of the class EED_Module.', 'event_espresso' ), $module_name ), __FILE__, __FUNCTION__, __LINE__ ); |
|
193 | + if ( ! $mod_reflector->isSubclassOf('EED_Module')) { |
|
194 | + EE_Error::add_error(sprintf(__('The requested %s module is not of the class EED_Module.', 'event_espresso'), $module_name), __FILE__, __FUNCTION__, __LINE__); |
|
195 | 195 | return NULL; |
196 | 196 | } |
197 | 197 | // instantiate and return module class |
@@ -209,14 +209,14 @@ discard block |
||
209 | 209 | * @param string $method |
210 | 210 | * @return EED_Module | NULL |
211 | 211 | */ |
212 | - private function _module_router( $module_name, $method ) { |
|
212 | + private function _module_router($module_name, $method) { |
|
213 | 213 | // instantiate module class |
214 | - $module = EE_Module_Request_Router::module_factory( $module_name ); |
|
215 | - if ( $module instanceof EED_Module ) { |
|
214 | + $module = EE_Module_Request_Router::module_factory($module_name); |
|
215 | + if ($module instanceof EED_Module) { |
|
216 | 216 | // and call whatever action the route was for |
217 | 217 | try { |
218 | - call_user_func( array( $module, $method ), $this->WP_Query ); |
|
219 | - } catch ( EE_Error $e ) { |
|
218 | + call_user_func(array($module, $method), $this->WP_Query); |
|
219 | + } catch (EE_Error $e) { |
|
220 | 220 | $e->get_error(); |
221 | 221 | return NULL; |
222 | 222 | } |
@@ -233,8 +233,8 @@ discard block |
||
233 | 233 | * @param $current_route |
234 | 234 | * @return string |
235 | 235 | */ |
236 | - public function get_forward( $current_route ) { |
|
237 | - return EE_Config::get_forward( $current_route ); |
|
236 | + public function get_forward($current_route) { |
|
237 | + return EE_Config::get_forward($current_route); |
|
238 | 238 | } |
239 | 239 | |
240 | 240 | |
@@ -246,8 +246,8 @@ discard block |
||
246 | 246 | * @param $current_route |
247 | 247 | * @return string |
248 | 248 | */ |
249 | - public function get_view( $current_route ) { |
|
250 | - return EE_Config::get_view( $current_route ); |
|
249 | + public function get_view($current_route) { |
|
250 | + return EE_Config::get_view($current_route); |
|
251 | 251 | } |
252 | 252 | |
253 | 253 | |
@@ -257,7 +257,7 @@ discard block |
||
257 | 257 | * @param $b |
258 | 258 | * @return bool |
259 | 259 | */ |
260 | - public function __set($a,$b) { return FALSE; } |
|
260 | + public function __set($a, $b) { return FALSE; } |
|
261 | 261 | |
262 | 262 | |
263 | 263 |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) exit('No direct script access allowed'); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Event Espresso |
4 | 6 | * |
@@ -243,7 +243,7 @@ |
||
243 | 243 | * get_view |
244 | 244 | * |
245 | 245 | * @access public |
246 | - * @param $current_route |
|
246 | + * @param string $current_route |
|
247 | 247 | * @return string |
248 | 248 | */ |
249 | 249 | public function get_view( $current_route ) { |