Completed
Branch master (f6cf92)
by
unknown
81:56 queued 73:25
created
public/template_tags.php 1 patch
Spacing   +289 added lines, -289 removed lines patch added patch discarded remove patch
@@ -14,12 +14,12 @@  discard block
 block discarded – undo
14 14
  * @param int | \EE_Event $event
15 15
  * @return bool
16 16
  */
17
-function is_espresso_event( $event = NULL ) {
18
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
17
+function is_espresso_event($event = NULL) {
18
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
19 19
 		// extract EE_Event object from passed param regardless of what it is (within reason of course)
20
-		$event = EEH_Event_View::get_event( $event );
20
+		$event = EEH_Event_View::get_event($event);
21 21
 		// do we have a valid event ?
22
-		return $event instanceof EE_Event  ? TRUE : FALSE;
22
+		return $event instanceof EE_Event ? TRUE : FALSE;
23 23
 	}
24 24
 	return FALSE;
25 25
 }
@@ -31,7 +31,7 @@  discard block
 block discarded – undo
31 31
  * @return bool
32 32
  */
33 33
 function is_espresso_event_single() {
34
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
34
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
35 35
 		global $wp_query;
36 36
 		// return conditionals set by CPTs
37 37
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_event_single : FALSE;
@@ -46,7 +46,7 @@  discard block
 block discarded – undo
46 46
  * @return bool
47 47
  */
48 48
 function is_espresso_event_archive() {
49
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
49
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
50 50
 		global $wp_query;
51 51
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_event_archive : FALSE;
52 52
 	}
@@ -60,7 +60,7 @@  discard block
 block discarded – undo
60 60
  * @return bool
61 61
  */
62 62
 function is_espresso_event_taxonomy() {
63
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
63
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
64 64
 		global $wp_query;
65 65
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_event_taxonomy : FALSE;
66 66
 	}
@@ -74,10 +74,10 @@  discard block
 block discarded – undo
74 74
  * @param int | \EE_Venue $venue
75 75
  * @return bool
76 76
  */
77
-function is_espresso_venue( $venue = NULL ) {
78
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
77
+function is_espresso_venue($venue = NULL) {
78
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
79 79
 		// extract EE_Venue object from passed param regardless of what it is (within reason of course)
80
-		$venue = EEH_Venue_View::get_venue( $venue, FALSE );
80
+		$venue = EEH_Venue_View::get_venue($venue, FALSE);
81 81
 		// do we have a valid event ?
82 82
 		return $venue instanceof EE_Venue ? TRUE : FALSE;
83 83
 	}
@@ -91,7 +91,7 @@  discard block
 block discarded – undo
91 91
  * @return bool
92 92
  */
93 93
 function is_espresso_venue_single() {
94
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
94
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
95 95
 		global $wp_query;
96 96
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_venue_single : FALSE;
97 97
 	}
@@ -105,7 +105,7 @@  discard block
 block discarded – undo
105 105
  * @return bool
106 106
  */
107 107
 function is_espresso_venue_archive() {
108
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
108
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
109 109
 		global $wp_query;
110 110
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_venue_archive : FALSE;
111 111
 	}
@@ -119,7 +119,7 @@  discard block
 block discarded – undo
119 119
  * @return bool
120 120
  */
121 121
 function is_espresso_venue_taxonomy() {
122
-	if ( can_use_espresso_conditionals( __FUNCTION__ )) {
122
+	if (can_use_espresso_conditionals(__FUNCTION__)) {
123 123
 		global $wp_query;
124 124
 		return $wp_query instanceof WP_Query ? $wp_query->is_espresso_venue_taxonomy : FALSE;
125 125
 	}
@@ -133,12 +133,12 @@  discard block
 block discarded – undo
133 133
  * @param $conditional_tag
134 134
  * @return bool
135 135
  */
136
-function can_use_espresso_conditionals( $conditional_tag ) {
137
-	if ( ! did_action( 'AHEE__EE_System__initialize' )) {
136
+function can_use_espresso_conditionals($conditional_tag) {
137
+	if ( ! did_action('AHEE__EE_System__initialize')) {
138 138
 		EE_Error::doing_it_wrong(
139 139
 			__FUNCTION__,
140 140
 			sprintf(
141
-				__( 'The "%s" conditional tag can not be used until after the "init" hook has run, but works best when used within a theme\'s template files.','event_espresso'),
141
+				__('The "%s" conditional tag can not be used until after the "init" hook has run, but works best when used within a theme\'s template files.', 'event_espresso'),
142 142
 				$conditional_tag
143 143
 			),
144 144
 			'4.4.0'
@@ -153,13 +153,13 @@  discard block
 block discarded – undo
153 153
 
154 154
 /*************************** Event Queries ***************************/
155 155
 
156
-if ( ! function_exists( 'espresso_get_events' )) {
156
+if ( ! function_exists('espresso_get_events')) {
157 157
 	/**
158 158
 	 * 	espresso_get_events
159 159
 	 * @param array $params
160 160
 	 * @return array
161 161
 	 */
162
-	function espresso_get_events( $params = array() ) {
162
+	function espresso_get_events($params = array()) {
163 163
 		//set default params
164 164
 		$default_espresso_events_params = array(
165 165
 			'limit' => 10,
@@ -170,18 +170,18 @@  discard block
 block discarded – undo
170 170
 			'sort' => 'ASC'
171 171
 		);
172 172
 		// allow the defaults to be filtered
173
-		$default_espresso_events_params = apply_filters( 'espresso_get_events__default_espresso_events_params', $default_espresso_events_params );
173
+		$default_espresso_events_params = apply_filters('espresso_get_events__default_espresso_events_params', $default_espresso_events_params);
174 174
 		// grab params and merge with defaults, then extract
175
-		$params = array_merge( $default_espresso_events_params, $params );
175
+		$params = array_merge($default_espresso_events_params, $params);
176 176
 		// run the query
177
-		$events_query = new EventEspresso\core\domain\services\wp_queries\EventListQuery( $params );
177
+		$events_query = new EventEspresso\core\domain\services\wp_queries\EventListQuery($params);
178 178
 		// assign results to a variable so we can return it
179 179
 		$events = $events_query->have_posts() ? $events_query->posts : array();
180 180
 		// but first reset the query and postdata
181 181
 		wp_reset_query();
182 182
 		wp_reset_postdata();
183 183
 		EED_Events_Archive::remove_all_events_archive_filters();
184
-		unset( $events_query );
184
+		unset($events_query);
185 185
 		return $events;
186 186
 	}
187 187
 }
@@ -195,33 +195,33 @@  discard block
 block discarded – undo
195 195
  * espresso_load_ticket_selector
196 196
  */
197 197
 function espresso_load_ticket_selector() {
198
-	EE_Registry::instance()->load_file( EE_MODULES . 'ticket_selector', 'EED_Ticket_Selector', 'module' );
198
+	EE_Registry::instance()->load_file(EE_MODULES.'ticket_selector', 'EED_Ticket_Selector', 'module');
199 199
 }
200 200
 
201
-if ( ! function_exists( 'espresso_ticket_selector' )) {
201
+if ( ! function_exists('espresso_ticket_selector')) {
202 202
 	/**
203 203
 	 * espresso_ticket_selector
204 204
 	 * @param null $event
205 205
 	 */
206
-	function espresso_ticket_selector( $event = NULL ) {
207
-		if (  ! apply_filters( 'FHEE_disable_espresso_ticket_selector', FALSE ) ) {
206
+	function espresso_ticket_selector($event = NULL) {
207
+		if ( ! apply_filters('FHEE_disable_espresso_ticket_selector', FALSE)) {
208 208
 			espresso_load_ticket_selector();
209 209
             \EED_Ticket_Selector::set_definitions();
210
-			echo EED_Ticket_Selector::display_ticket_selector( $event );
210
+			echo EED_Ticket_Selector::display_ticket_selector($event);
211 211
 		}
212 212
 	}
213 213
 }
214 214
 
215 215
 
216
-	if ( ! function_exists( 'espresso_view_details_btn' )) {
216
+	if ( ! function_exists('espresso_view_details_btn')) {
217 217
 	/**
218 218
 	 * espresso_view_details_btn
219 219
 	 * @param null $event
220 220
 	 */
221
-	function espresso_view_details_btn( $event = NULL ) {
222
-		if (  ! apply_filters( 'FHEE_disable_espresso_view_details_btn', FALSE ) ) {
221
+	function espresso_view_details_btn($event = NULL) {
222
+		if ( ! apply_filters('FHEE_disable_espresso_view_details_btn', FALSE)) {
223 223
 			espresso_load_ticket_selector();
224
-			echo EED_Ticket_Selector::display_ticket_selector( $event, TRUE );
224
+			echo EED_Ticket_Selector::display_ticket_selector($event, TRUE);
225 225
 		}
226 226
 	}
227 227
 }
@@ -231,7 +231,7 @@  discard block
 block discarded – undo
231 231
 
232 232
 /*************************** EEH_Event_View ***************************/
233 233
 
234
-if ( ! function_exists( 'espresso_load_event_list_assets' )) {
234
+if ( ! function_exists('espresso_load_event_list_assets')) {
235 235
 	/**
236 236
 	 * espresso_load_event_list_assets
237 237
 	 * ensures that event list styles and scripts are loaded
@@ -240,13 +240,13 @@  discard block
 block discarded – undo
240 240
 	 */
241 241
 	function espresso_load_event_list_assets() {
242 242
 		$event_list = EED_Events_Archive::instance();
243
-		add_action( 'AHEE__EE_System__initialize_last', array( $event_list, 'load_event_list_assets' ), 10 );
244
-		add_filter( 'FHEE_enable_default_espresso_css', '__return_true' );
243
+		add_action('AHEE__EE_System__initialize_last', array($event_list, 'load_event_list_assets'), 10);
244
+		add_filter('FHEE_enable_default_espresso_css', '__return_true');
245 245
 	}
246 246
 }
247 247
 
248 248
 
249
-if ( ! function_exists( 'espresso_event_reg_button' )) {
249
+if ( ! function_exists('espresso_event_reg_button')) {
250 250
 	/**
251 251
 	 * espresso_event_reg_button
252 252
 	 * returns the "Register Now" button if event is active,
@@ -258,9 +258,9 @@  discard block
 block discarded – undo
258 258
 	 * @param bool $EVT_ID
259 259
 	 * @return string
260 260
 	 */
261
-	function espresso_event_reg_button( $btn_text_if_active = NULL, $btn_text_if_inactive = FALSE, $EVT_ID = FALSE ) {
262
-		$event_status = EEH_Event_View::event_active_status( $EVT_ID );
263
-		switch ( $event_status ) {
261
+	function espresso_event_reg_button($btn_text_if_active = NULL, $btn_text_if_inactive = FALSE, $EVT_ID = FALSE) {
262
+		$event_status = EEH_Event_View::event_active_status($EVT_ID);
263
+		switch ($event_status) {
264 264
 			case EE_Datetime::sold_out :
265 265
 				$btn_text = __('Sold Out', 'event_espresso');
266 266
 				$class = 'ee-pink';
@@ -276,10 +276,10 @@  discard block
 block discarded – undo
276 276
 			case EE_Datetime::upcoming :
277 277
 			case EE_Datetime::active :
278 278
 			default :
279
-				$btn_text =! empty( $btn_text_if_active ) ? $btn_text_if_active : __( 'Register Now', 'event_espresso' );
279
+				$btn_text = ! empty($btn_text_if_active) ? $btn_text_if_active : __('Register Now', 'event_espresso');
280 280
 				$class = 'ee-green';
281 281
 		}
282
-		if ( $event_status < 1 && ! empty( $btn_text_if_inactive )) {
282
+		if ($event_status < 1 && ! empty($btn_text_if_inactive)) {
283 283
 			$btn_text = $btn_text_if_inactive;
284 284
 			$class = 'ee-grey';
285 285
 		}
@@ -293,7 +293,7 @@  discard block
 block discarded – undo
293 293
 
294 294
 
295 295
 
296
-if ( ! function_exists( 'espresso_display_ticket_selector' )) {
296
+if ( ! function_exists('espresso_display_ticket_selector')) {
297 297
 	/**
298 298
 	 * espresso_display_ticket_selector
299 299
 	 * whether or not to display the Ticket Selector for an event
@@ -301,14 +301,14 @@  discard block
 block discarded – undo
301 301
 	 * @param bool $EVT_ID
302 302
 	 * @return boolean
303 303
 	 */
304
-	function espresso_display_ticket_selector( $EVT_ID = FALSE ) {
305
-		return EEH_Event_View::display_ticket_selector( $EVT_ID );
304
+	function espresso_display_ticket_selector($EVT_ID = FALSE) {
305
+		return EEH_Event_View::display_ticket_selector($EVT_ID);
306 306
 	}
307 307
 }
308 308
 
309 309
 
310 310
 
311
-if ( ! function_exists( 'espresso_event_status_banner' )) {
311
+if ( ! function_exists('espresso_event_status_banner')) {
312 312
 	/**
313 313
 	 * espresso_event_status
314 314
 	 * returns a banner showing the event status if it is sold out, expired, or inactive
@@ -316,13 +316,13 @@  discard block
 block discarded – undo
316 316
 	 * @param bool $EVT_ID
317 317
 	 * @return string
318 318
 	 */
319
-	function espresso_event_status_banner( $EVT_ID = FALSE ) {
320
-		return EEH_Event_View::event_status( $EVT_ID );
319
+	function espresso_event_status_banner($EVT_ID = FALSE) {
320
+		return EEH_Event_View::event_status($EVT_ID);
321 321
 	}
322 322
 }
323 323
 
324 324
 
325
-if ( ! function_exists( 'espresso_event_status' )) {
325
+if ( ! function_exists('espresso_event_status')) {
326 326
 	/**
327 327
 	 * espresso_event_status
328 328
 	 * returns the event status if it is sold out, expired, or inactive
@@ -331,13 +331,13 @@  discard block
 block discarded – undo
331 331
 	 * @param bool $echo
332 332
 	 * @return string
333 333
 	 */
334
-	function espresso_event_status( $EVT_ID = 0, $echo = TRUE ) {
335
-		return EEH_Event_View::event_active_status( $EVT_ID, $echo );
334
+	function espresso_event_status($EVT_ID = 0, $echo = TRUE) {
335
+		return EEH_Event_View::event_active_status($EVT_ID, $echo);
336 336
 	}
337 337
 }
338 338
 
339 339
 
340
-if ( ! function_exists( 'espresso_event_categories' )) {
340
+if ( ! function_exists('espresso_event_categories')) {
341 341
 	/**
342 342
 	 * espresso_event_categories
343 343
 	 * returns the terms associated with an event
@@ -347,17 +347,17 @@  discard block
 block discarded – undo
347 347
 	 * @param bool $echo
348 348
 	 * @return string
349 349
 	 */
350
-	function espresso_event_categories( $EVT_ID = 0, $hide_uncategorized = TRUE, $echo = TRUE ) {
351
-		if ( $echo ) {
352
-			echo EEH_Event_View::event_categories( $EVT_ID, $hide_uncategorized );
350
+	function espresso_event_categories($EVT_ID = 0, $hide_uncategorized = TRUE, $echo = TRUE) {
351
+		if ($echo) {
352
+			echo EEH_Event_View::event_categories($EVT_ID, $hide_uncategorized);
353 353
 			return '';
354 354
 		}
355
-		return EEH_Event_View::event_categories( $EVT_ID, $hide_uncategorized );
355
+		return EEH_Event_View::event_categories($EVT_ID, $hide_uncategorized);
356 356
 	}
357 357
 }
358 358
 
359 359
 
360
-if ( ! function_exists( 'espresso_event_tickets_available' )) {
360
+if ( ! function_exists('espresso_event_tickets_available')) {
361 361
 	/**
362 362
 	 * espresso_event_tickets_available
363 363
 	 * returns the ticket types available for purchase for an event
@@ -367,26 +367,26 @@  discard block
 block discarded – undo
367 367
 	 * @param bool $format
368 368
 	 * @return string
369 369
 	 */
370
-	function espresso_event_tickets_available( $EVT_ID = 0, $echo = TRUE, $format = TRUE ) {
371
-		$tickets = EEH_Event_View::event_tickets_available( $EVT_ID );
372
-		if ( is_array( $tickets ) && ! empty( $tickets )) {
370
+	function espresso_event_tickets_available($EVT_ID = 0, $echo = TRUE, $format = TRUE) {
371
+		$tickets = EEH_Event_View::event_tickets_available($EVT_ID);
372
+		if (is_array($tickets) && ! empty($tickets)) {
373 373
 			// if formatting then $html will be a string, else it will be an array of ticket objects
374
-			$html = $format ? '<ul id="ee-event-tickets-ul-' . $EVT_ID . '" class="ee-event-tickets-ul">' : array();
375
-			foreach ( $tickets as $ticket ) {
376
-				if ( $ticket instanceof EE_Ticket ) {
377
-					if ( $format ) {
378
-						$html .= '<li id="ee-event-tickets-li-' . $ticket->ID() . '" class="ee-event-tickets-li">';
379
-						$html .= $ticket->name() . ' ' . EEH_Template::format_currency( $ticket->get_ticket_total_with_taxes() );
374
+			$html = $format ? '<ul id="ee-event-tickets-ul-'.$EVT_ID.'" class="ee-event-tickets-ul">' : array();
375
+			foreach ($tickets as $ticket) {
376
+				if ($ticket instanceof EE_Ticket) {
377
+					if ($format) {
378
+						$html .= '<li id="ee-event-tickets-li-'.$ticket->ID().'" class="ee-event-tickets-li">';
379
+						$html .= $ticket->name().' '.EEH_Template::format_currency($ticket->get_ticket_total_with_taxes());
380 380
 						$html .= '</li>';
381 381
 					} else {
382 382
 						$html[] = $ticket;
383 383
 					}
384 384
 				}
385 385
 			}
386
-			if ( $format ) {
386
+			if ($format) {
387 387
 				$html .= '</ul>';
388 388
 			}
389
-			if ( $echo && $format ) {
389
+			if ($echo && $format) {
390 390
 				echo $html;
391 391
 				return '';
392 392
 			}
@@ -396,7 +396,7 @@  discard block
 block discarded – undo
396 396
 	}
397 397
 }
398 398
 
399
-if ( ! function_exists( 'espresso_event_date_obj' )) {
399
+if ( ! function_exists('espresso_event_date_obj')) {
400 400
 	/**
401 401
 	 * espresso_event_date_obj
402 402
 	 * returns the primary date object for an event
@@ -404,13 +404,13 @@  discard block
 block discarded – undo
404 404
 	 * @param bool $EVT_ID
405 405
 	 * @return object
406 406
 	 */
407
-	function espresso_event_date_obj( $EVT_ID = FALSE ) {
408
-		return EEH_Event_View::get_primary_date_obj( $EVT_ID );
407
+	function espresso_event_date_obj($EVT_ID = FALSE) {
408
+		return EEH_Event_View::get_primary_date_obj($EVT_ID);
409 409
 	}
410 410
 }
411 411
 
412 412
 
413
-if ( ! function_exists( 'espresso_event_date' )) {
413
+if ( ! function_exists('espresso_event_date')) {
414 414
 	/**
415 415
 	 * espresso_event_date
416 416
 	 * returns the primary date for an event
@@ -421,22 +421,22 @@  discard block
 block discarded – undo
421 421
 	 * @param bool $echo
422 422
 	 * @return string
423 423
 	 */
424
-	function espresso_event_date( $date_format = '', $time_format = '', $EVT_ID = FALSE, $echo = TRUE ) {
425
-		$date_format = ! empty( $date_format ) ? $date_format : get_option( 'date_format' );
426
-		$time_format = ! empty( $time_format ) ? $time_format : get_option( 'time_format' );
427
-		$date_format = apply_filters( 'FHEE__espresso_event_date__date_format', $date_format );
428
-		$time_format = apply_filters( 'FHEE__espresso_event_date__time_format', $time_format );
429
-		if($echo){
430
-			echo EEH_Event_View::the_event_date( $date_format, $time_format, $EVT_ID );
424
+	function espresso_event_date($date_format = '', $time_format = '', $EVT_ID = FALSE, $echo = TRUE) {
425
+		$date_format = ! empty($date_format) ? $date_format : get_option('date_format');
426
+		$time_format = ! empty($time_format) ? $time_format : get_option('time_format');
427
+		$date_format = apply_filters('FHEE__espresso_event_date__date_format', $date_format);
428
+		$time_format = apply_filters('FHEE__espresso_event_date__time_format', $time_format);
429
+		if ($echo) {
430
+			echo EEH_Event_View::the_event_date($date_format, $time_format, $EVT_ID);
431 431
 			return '';
432 432
 		}
433
-		return EEH_Event_View::the_event_date( $date_format, $time_format, $EVT_ID );
433
+		return EEH_Event_View::the_event_date($date_format, $time_format, $EVT_ID);
434 434
 
435 435
 	}
436 436
 }
437 437
 
438 438
 
439
-if ( ! function_exists( 'espresso_list_of_event_dates' )) {
439
+if ( ! function_exists('espresso_list_of_event_dates')) {
440 440
 	/**
441 441
 	 * espresso_list_of_event_dates
442 442
 	 * returns a unordered list of dates for an event
@@ -451,40 +451,40 @@  discard block
 block discarded – undo
451 451
 	 * @param null   $limit
452 452
 	 * @return string
453 453
 	 */
454
-	function espresso_list_of_event_dates( $EVT_ID = 0, $date_format = '', $time_format = '', $echo = TRUE, $show_expired = NULL, $format = TRUE, $add_breaks = TRUE, $limit = NULL ) {
455
-		$date_format = ! empty( $date_format ) ? $date_format : get_option( 'date_format' );
456
-		$time_format = ! empty( $time_format ) ? $time_format : get_option( 'time_format' );
457
-		$date_format = apply_filters( 'FHEE__espresso_list_of_event_dates__date_format', $date_format );
458
-		$time_format = apply_filters( 'FHEE__espresso_list_of_event_dates__time_format', $time_format );
459
-		$datetimes = EEH_Event_View::get_all_date_obj( $EVT_ID, $show_expired, FALSE, $limit );
460
-		if ( ! $format ) {
461
-			return apply_filters( 'FHEE__espresso_list_of_event_dates__datetimes', $datetimes );
454
+	function espresso_list_of_event_dates($EVT_ID = 0, $date_format = '', $time_format = '', $echo = TRUE, $show_expired = NULL, $format = TRUE, $add_breaks = TRUE, $limit = NULL) {
455
+		$date_format = ! empty($date_format) ? $date_format : get_option('date_format');
456
+		$time_format = ! empty($time_format) ? $time_format : get_option('time_format');
457
+		$date_format = apply_filters('FHEE__espresso_list_of_event_dates__date_format', $date_format);
458
+		$time_format = apply_filters('FHEE__espresso_list_of_event_dates__time_format', $time_format);
459
+		$datetimes = EEH_Event_View::get_all_date_obj($EVT_ID, $show_expired, FALSE, $limit);
460
+		if ( ! $format) {
461
+			return apply_filters('FHEE__espresso_list_of_event_dates__datetimes', $datetimes);
462 462
 		}
463 463
 		//d( $datetimes );
464
-		if ( is_array( $datetimes ) && ! empty( $datetimes )) {
464
+		if (is_array($datetimes) && ! empty($datetimes)) {
465 465
 			global $post;
466
-			$html = $format ? '<ul id="ee-event-datetimes-ul-' . $post->ID . '" class="ee-event-datetimes-ul ee-clearfix">' : '';
467
-			foreach ( $datetimes as $datetime ) {
468
-				if ( $datetime instanceof EE_Datetime ) {
469
-					$html .= '<li id="ee-event-datetimes-li-' . $datetime->ID();
470
-					$html .= '" class="ee-event-datetimes-li ee-event-datetimes-li-' . $datetime->get_active_status() . '">';
466
+			$html = $format ? '<ul id="ee-event-datetimes-ul-'.$post->ID.'" class="ee-event-datetimes-ul ee-clearfix">' : '';
467
+			foreach ($datetimes as $datetime) {
468
+				if ($datetime instanceof EE_Datetime) {
469
+					$html .= '<li id="ee-event-datetimes-li-'.$datetime->ID();
470
+					$html .= '" class="ee-event-datetimes-li ee-event-datetimes-li-'.$datetime->get_active_status().'">';
471 471
 					$datetime_name = $datetime->name();
472
-					$html .= ! empty( $datetime_name ) ? '<strong>' . $datetime_name . '</strong>' : '';
473
-					$html .= ! empty( $datetime_name )  && $add_breaks ? '<br />' : '';
474
-					$html .= '<span class="dashicons dashicons-calendar"></span><span class="ee-event-datetimes-li-daterange">' . $datetime->date_range( $date_format ) . '</span><br/>';
475
-					$html .= '<span class="dashicons dashicons-clock"></span><span class="ee-event-datetimes-li-timerange">' . $datetime->time_range( $time_format ) . '</span>';
472
+					$html .= ! empty($datetime_name) ? '<strong>'.$datetime_name.'</strong>' : '';
473
+					$html .= ! empty($datetime_name) && $add_breaks ? '<br />' : '';
474
+					$html .= '<span class="dashicons dashicons-calendar"></span><span class="ee-event-datetimes-li-daterange">'.$datetime->date_range($date_format).'</span><br/>';
475
+					$html .= '<span class="dashicons dashicons-clock"></span><span class="ee-event-datetimes-li-timerange">'.$datetime->time_range($time_format).'</span>';
476 476
 					$datetime_description = $datetime->description();
477
-					$html .= ! empty( $datetime_description )  && $add_breaks ? '<br />' : '';
478
-					$html .= ! empty( $datetime_description ) ? ' - ' . $datetime_description : '';
479
-					$html = apply_filters( 'FHEE__espresso_list_of_event_dates__datetime_html', $html, $datetime );
477
+					$html .= ! empty($datetime_description) && $add_breaks ? '<br />' : '';
478
+					$html .= ! empty($datetime_description) ? ' - '.$datetime_description : '';
479
+					$html = apply_filters('FHEE__espresso_list_of_event_dates__datetime_html', $html, $datetime);
480 480
 					$html .= '</li>';
481 481
 				}
482 482
 			}
483 483
 			$html .= $format ? '</ul>' : '';
484 484
 		} else {
485
-			$html = $format ?  '<p><span class="dashicons dashicons-marker pink-text"></span>' . __( 'There are no upcoming dates for this event.', 'event_espresso' ) . '</p><br/>' : '';
485
+			$html = $format ? '<p><span class="dashicons dashicons-marker pink-text"></span>'.__('There are no upcoming dates for this event.', 'event_espresso').'</p><br/>' : '';
486 486
 		}
487
-		if ( $echo ) {
487
+		if ($echo) {
488 488
 			echo $html;
489 489
 			return '';
490 490
 		}
@@ -493,7 +493,7 @@  discard block
 block discarded – undo
493 493
 }
494 494
 
495 495
 
496
-if ( ! function_exists( 'espresso_event_end_date' )) {
496
+if ( ! function_exists('espresso_event_end_date')) {
497 497
 	/**
498 498
 	 * espresso_event_end_date
499 499
 	 * returns the last date for an event
@@ -504,20 +504,20 @@  discard block
 block discarded – undo
504 504
 	 * @param bool   $echo
505 505
 	 * @return string
506 506
 	 */
507
-	function espresso_event_end_date( $date_format = '', $time_format = '', $EVT_ID = FALSE, $echo = TRUE ) {
508
-		$date_format = ! empty( $date_format ) ? $date_format : get_option( 'date_format' );
509
-		$time_format = ! empty( $time_format ) ? $time_format : get_option( 'time_format' );
510
-		$date_format = apply_filters( 'FHEE__espresso_event_end_date__date_format', $date_format );
511
-		$time_format = apply_filters( 'FHEE__espresso_event_end_date__time_format', $time_format );
512
-		if($echo){
513
-			echo EEH_Event_View::the_event_end_date( $date_format, $time_format, $EVT_ID );
507
+	function espresso_event_end_date($date_format = '', $time_format = '', $EVT_ID = FALSE, $echo = TRUE) {
508
+		$date_format = ! empty($date_format) ? $date_format : get_option('date_format');
509
+		$time_format = ! empty($time_format) ? $time_format : get_option('time_format');
510
+		$date_format = apply_filters('FHEE__espresso_event_end_date__date_format', $date_format);
511
+		$time_format = apply_filters('FHEE__espresso_event_end_date__time_format', $time_format);
512
+		if ($echo) {
513
+			echo EEH_Event_View::the_event_end_date($date_format, $time_format, $EVT_ID);
514 514
 			return '';
515 515
 		}
516
-		return EEH_Event_View::the_event_end_date( $date_format, $time_format, $EVT_ID );
516
+		return EEH_Event_View::the_event_end_date($date_format, $time_format, $EVT_ID);
517 517
 	}
518 518
 }
519 519
 
520
-if ( ! function_exists( 'espresso_event_date_range' )) {
520
+if ( ! function_exists('espresso_event_date_range')) {
521 521
 	/**
522 522
 	 * espresso_event_date_range
523 523
 	 * returns the first and last chronologically ordered dates for an event (if different)
@@ -530,31 +530,31 @@  discard block
 block discarded – undo
530 530
 	 * @param bool   $echo
531 531
 	 * @return string
532 532
 	 */
533
-	function espresso_event_date_range( $date_format = '', $time_format = '', $single_date_format = '', $single_time_format = '', $EVT_ID = FALSE, $echo = TRUE ) {
533
+	function espresso_event_date_range($date_format = '', $time_format = '', $single_date_format = '', $single_time_format = '', $EVT_ID = FALSE, $echo = TRUE) {
534 534
 		// set and filter date and time formats when a range is returned
535
-		$date_format = ! empty( $date_format ) ? $date_format : get_option( 'date_format' );
536
-		$date_format = apply_filters( 'FHEE__espresso_event_date_range__date_format', $date_format );
535
+		$date_format = ! empty($date_format) ? $date_format : get_option('date_format');
536
+		$date_format = apply_filters('FHEE__espresso_event_date_range__date_format', $date_format);
537 537
 		// get the start and end date with NO time portion
538
-		$the_event_date = EEH_Event_View::the_earliest_event_date( $date_format, '', $EVT_ID );
539
-		$the_event_end_date = EEH_Event_View::the_latest_event_date( $date_format, '', $EVT_ID );
538
+		$the_event_date = EEH_Event_View::the_earliest_event_date($date_format, '', $EVT_ID);
539
+		$the_event_end_date = EEH_Event_View::the_latest_event_date($date_format, '', $EVT_ID);
540 540
 		// now we can determine if date range spans more than one day
541
-		if ( $the_event_date != $the_event_end_date ) {
542
-			$time_format = ! empty( $time_format ) ? $time_format : get_option( 'time_format' );
543
-			$time_format = apply_filters( 'FHEE__espresso_event_date_range__time_format', $time_format );
541
+		if ($the_event_date != $the_event_end_date) {
542
+			$time_format = ! empty($time_format) ? $time_format : get_option('time_format');
543
+			$time_format = apply_filters('FHEE__espresso_event_date_range__time_format', $time_format);
544 544
 			$html = sprintf(
545
-				__( '%1$s - %2$s', 'event_espresso' ),
546
-				EEH_Event_View::the_earliest_event_date( $date_format, $time_format, $EVT_ID ),
547
-				EEH_Event_View::the_latest_event_date( $date_format, $time_format, $EVT_ID )
545
+				__('%1$s - %2$s', 'event_espresso'),
546
+				EEH_Event_View::the_earliest_event_date($date_format, $time_format, $EVT_ID),
547
+				EEH_Event_View::the_latest_event_date($date_format, $time_format, $EVT_ID)
548 548
 			);
549 549
 		} else {
550 550
 			// set and filter date and time formats when only a single datetime is returned
551
-			$single_date_format = ! empty( $single_date_format ) ? $single_date_format : get_option( 'date_format' );
552
-			$single_time_format = ! empty( $single_time_format ) ? $single_time_format : get_option( 'time_format' );
553
-			$single_date_format = apply_filters( 'FHEE__espresso_event_date_range__single_date_format', $single_date_format );
554
-			$single_time_format = apply_filters( 'FHEE__espresso_event_date_range__single_time_format', $single_time_format );
555
-			$html = EEH_Event_View::the_earliest_event_date( $single_date_format, $single_time_format, $EVT_ID );
551
+			$single_date_format = ! empty($single_date_format) ? $single_date_format : get_option('date_format');
552
+			$single_time_format = ! empty($single_time_format) ? $single_time_format : get_option('time_format');
553
+			$single_date_format = apply_filters('FHEE__espresso_event_date_range__single_date_format', $single_date_format);
554
+			$single_time_format = apply_filters('FHEE__espresso_event_date_range__single_time_format', $single_time_format);
555
+			$html = EEH_Event_View::the_earliest_event_date($single_date_format, $single_time_format, $EVT_ID);
556 556
 		}
557
-		if ( $echo ) {
557
+		if ($echo) {
558 558
 			echo $html;
559 559
 			return '';
560 560
 		}
@@ -562,7 +562,7 @@  discard block
 block discarded – undo
562 562
 	}
563 563
 }
564 564
 
565
-if ( ! function_exists( 'espresso_next_upcoming_datetime_obj' )) {
565
+if ( ! function_exists('espresso_next_upcoming_datetime_obj')) {
566 566
 	/**
567 567
 	 * espresso_next_upcoming_datetime_obj
568 568
 	 * returns the next upcoming datetime object for an event
@@ -570,12 +570,12 @@  discard block
 block discarded – undo
570 570
 	 * @param int $EVT_ID
571 571
 	 * @return EE_Datetime|null
572 572
 	 */
573
-	function espresso_next_upcoming_datetime_obj( $EVT_ID = 0 ) {
574
-		return EEH_Event_View::get_next_upcoming_date_obj( $EVT_ID );
573
+	function espresso_next_upcoming_datetime_obj($EVT_ID = 0) {
574
+		return EEH_Event_View::get_next_upcoming_date_obj($EVT_ID);
575 575
 	}
576 576
 }
577 577
 
578
-if ( ! function_exists( 'espresso_next_upcoming_datetime' ) ) {
578
+if ( ! function_exists('espresso_next_upcoming_datetime')) {
579 579
 	/**
580 580
 	 * espresso_next_upcoming_datetime
581 581
 	 * returns the start date and time for the next upcoming event.
@@ -586,30 +586,30 @@  discard block
 block discarded – undo
586 586
 	 * @param bool $echo
587 587
 	 * @return string
588 588
 	 */
589
-	function espresso_next_upcoming_datetime( $date_format = '', $time_format = '', $EVT_ID = 0, $echo = true ) {
589
+	function espresso_next_upcoming_datetime($date_format = '', $time_format = '', $EVT_ID = 0, $echo = true) {
590 590
 
591
-		$date_format = ! empty( $date_format ) ? $date_format : get_option( 'date_format' );
592
-		$date_format = apply_filters( 'FHEE__espresso_next_upcoming_datetime__date_format', $date_format );
591
+		$date_format = ! empty($date_format) ? $date_format : get_option('date_format');
592
+		$date_format = apply_filters('FHEE__espresso_next_upcoming_datetime__date_format', $date_format);
593 593
 
594
-		$time_format = ! empty( $time_format ) ? $time_format : get_option( 'time_format' );
595
-		$time_format = apply_filters( 'FHEE__espresso_next_upcoming_datetime__time_format', $time_format );
594
+		$time_format = ! empty($time_format) ? $time_format : get_option('time_format');
595
+		$time_format = apply_filters('FHEE__espresso_next_upcoming_datetime__time_format', $time_format);
596 596
 
597
-		$datetime_format = trim( $date_format . ' ' . $time_format);
597
+		$datetime_format = trim($date_format.' '.$time_format);
598 598
 
599
-		$datetime = espresso_next_upcoming_datetime_obj( $EVT_ID );
599
+		$datetime = espresso_next_upcoming_datetime_obj($EVT_ID);
600 600
 
601
-		if( ! $datetime instanceof EE_Datetime ) {
601
+		if ( ! $datetime instanceof EE_Datetime) {
602 602
 			return '';
603 603
 		}
604
-		if ( $echo ){
605
-			echo $datetime->get_i18n_datetime( 'DTT_EVT_start', $datetime_format );
604
+		if ($echo) {
605
+			echo $datetime->get_i18n_datetime('DTT_EVT_start', $datetime_format);
606 606
 			return '';
607 607
 		}
608
-		return $datetime->get_i18n_datetime( 'DTT_EVT_start', $datetime_format );
608
+		return $datetime->get_i18n_datetime('DTT_EVT_start', $datetime_format);
609 609
 	}
610 610
 }
611 611
 
612
-if ( ! function_exists( 'espresso_event_date_as_calendar_page' )) {
612
+if ( ! function_exists('espresso_event_date_as_calendar_page')) {
613 613
 	/**
614 614
 	 * espresso_event_date_as_calendar_page
615 615
 	 * returns the primary date for an event, stylized to appear as the page of a calendar
@@ -617,15 +617,15 @@  discard block
 block discarded – undo
617 617
 	 * @param bool $EVT_ID
618 618
 	 * @return string
619 619
 	 */
620
-	function espresso_event_date_as_calendar_page( $EVT_ID = FALSE ) {
621
-		EEH_Event_View::event_date_as_calendar_page( $EVT_ID );
620
+	function espresso_event_date_as_calendar_page($EVT_ID = FALSE) {
621
+		EEH_Event_View::event_date_as_calendar_page($EVT_ID);
622 622
 	}
623 623
 }
624 624
 
625 625
 
626 626
 
627 627
 
628
-if ( ! function_exists( 'espresso_event_link_url' )) {
628
+if ( ! function_exists('espresso_event_link_url')) {
629 629
 	/**
630 630
 	 * espresso_event_link_url
631 631
 	 *
@@ -633,18 +633,18 @@  discard block
 block discarded – undo
633 633
 	 * @param bool $echo
634 634
 	 * @return string
635 635
 	 */
636
-	function espresso_event_link_url( $EVT_ID = 0, $echo = TRUE ) {
637
-		if ( $echo ) {
638
-			echo EEH_Event_View::event_link_url( $EVT_ID );
636
+	function espresso_event_link_url($EVT_ID = 0, $echo = TRUE) {
637
+		if ($echo) {
638
+			echo EEH_Event_View::event_link_url($EVT_ID);
639 639
 			return '';
640 640
 		}
641
-		return EEH_Event_View::event_link_url( $EVT_ID );
641
+		return EEH_Event_View::event_link_url($EVT_ID);
642 642
 	}
643 643
 }
644 644
 
645 645
 
646 646
 
647
-if ( ! function_exists( 'espresso_event_has_content_or_excerpt' )) {
647
+if ( ! function_exists('espresso_event_has_content_or_excerpt')) {
648 648
 	/**
649 649
 	 *    espresso_event_has_content_or_excerpt
650 650
 	 *
@@ -652,15 +652,15 @@  discard block
 block discarded – undo
652 652
 	 * @param bool $EVT_ID
653 653
 	 * @return    boolean
654 654
 	 */
655
-	function espresso_event_has_content_or_excerpt( $EVT_ID = FALSE ) {
656
-		return EEH_Event_View::event_has_content_or_excerpt( $EVT_ID );
655
+	function espresso_event_has_content_or_excerpt($EVT_ID = FALSE) {
656
+		return EEH_Event_View::event_has_content_or_excerpt($EVT_ID);
657 657
 	}
658 658
 }
659 659
 
660 660
 
661 661
 
662 662
 
663
-if ( ! function_exists( 'espresso_event_content_or_excerpt' )) {
663
+if ( ! function_exists('espresso_event_content_or_excerpt')) {
664 664
 	/**
665 665
 	 * espresso_event_content_or_excerpt
666 666
 	 *
@@ -669,18 +669,18 @@  discard block
 block discarded – undo
669 669
 	 * @param bool $echo
670 670
 	 * @return string
671 671
 	 */
672
-	function espresso_event_content_or_excerpt( $num_words = 55, $more = NULL, $echo = TRUE ) {
673
-		if ( $echo ) {
674
-			echo EEH_Event_View::event_content_or_excerpt( $num_words, $more );
672
+	function espresso_event_content_or_excerpt($num_words = 55, $more = NULL, $echo = TRUE) {
673
+		if ($echo) {
674
+			echo EEH_Event_View::event_content_or_excerpt($num_words, $more);
675 675
 			return '';
676 676
 		}
677
-		return EEH_Event_View::event_content_or_excerpt( $num_words, $more );
677
+		return EEH_Event_View::event_content_or_excerpt($num_words, $more);
678 678
 	}
679 679
 }
680 680
 
681 681
 
682 682
 
683
-if ( ! function_exists( 'espresso_event_phone' )) {
683
+if ( ! function_exists('espresso_event_phone')) {
684 684
 	/**
685 685
 	 * espresso_event_phone
686 686
 	 *
@@ -688,18 +688,18 @@  discard block
 block discarded – undo
688 688
 	 * @param bool $echo
689 689
 	 * @return string
690 690
 	 */
691
-	function espresso_event_phone( $EVT_ID = 0, $echo = TRUE ) {
692
-		if ( $echo ) {
693
-			echo EEH_Event_View::event_phone( $EVT_ID );
691
+	function espresso_event_phone($EVT_ID = 0, $echo = TRUE) {
692
+		if ($echo) {
693
+			echo EEH_Event_View::event_phone($EVT_ID);
694 694
 			return '';
695 695
 		}
696
-		return EEH_Event_View::event_phone( $EVT_ID );
696
+		return EEH_Event_View::event_phone($EVT_ID);
697 697
 	}
698 698
 }
699 699
 
700 700
 
701 701
 
702
-if ( ! function_exists( 'espresso_edit_event_link' )) {
702
+if ( ! function_exists('espresso_edit_event_link')) {
703 703
 	/**
704 704
 	 * espresso_edit_event_link
705 705
 	 * returns a link to edit an event
@@ -708,39 +708,39 @@  discard block
 block discarded – undo
708 708
 	 * @param bool $echo
709 709
 	 * @return string
710 710
 	 */
711
-	function espresso_edit_event_link( $EVT_ID = 0, $echo = TRUE ) {
712
-		if ( $echo ) {
713
-			echo EEH_Event_View::edit_event_link( $EVT_ID );
711
+	function espresso_edit_event_link($EVT_ID = 0, $echo = TRUE) {
712
+		if ($echo) {
713
+			echo EEH_Event_View::edit_event_link($EVT_ID);
714 714
 			return '';
715 715
 		}
716
-		return EEH_Event_View::edit_event_link( $EVT_ID );
716
+		return EEH_Event_View::edit_event_link($EVT_ID);
717 717
 	}
718 718
 }
719 719
 
720 720
 
721
-if ( ! function_exists( 'espresso_organization_name' )) {
721
+if ( ! function_exists('espresso_organization_name')) {
722 722
 	/**
723 723
 	 * espresso_organization_name
724 724
 	 * @param bool $echo
725 725
 	 * @return string
726 726
 	 */
727 727
 	function espresso_organization_name($echo = TRUE) {
728
-		if($echo){
729
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'name' );
728
+		if ($echo) {
729
+			echo EE_Registry::instance()->CFG->organization->get_pretty('name');
730 730
 			return '';
731 731
 		}
732
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'name' );
732
+		return EE_Registry::instance()->CFG->organization->get_pretty('name');
733 733
 	}
734 734
 }
735 735
 
736
-if ( ! function_exists( 'espresso_organization_address' )) {
736
+if ( ! function_exists('espresso_organization_address')) {
737 737
 	/**
738 738
 	 * espresso_organization_address
739 739
 	 * @param string $type
740 740
 	 * @return string
741 741
 	 */
742
-	function espresso_organization_address( $type = 'inline' ) {
743
-		if ( EE_Registry::instance()->CFG->organization instanceof EE_Organization_Config ) {
742
+	function espresso_organization_address($type = 'inline') {
743
+		if (EE_Registry::instance()->CFG->organization instanceof EE_Organization_Config) {
744 744
 			$address = new EventEspresso\core\domain\entities\GenericAddress(
745 745
 				EE_Registry::instance()->CFG->organization->address_1,
746 746
 				EE_Registry::instance()->CFG->organization->address_2,
@@ -749,129 +749,129 @@  discard block
 block discarded – undo
749 749
 				EE_Registry::instance()->CFG->organization->zip,
750 750
 				EE_Registry::instance()->CFG->organization->CNT_ISO
751 751
 			);
752
-			return EEH_Address::format( $address, $type );
752
+			return EEH_Address::format($address, $type);
753 753
 		}
754 754
 		return '';
755 755
 	}
756 756
 }
757 757
 
758
-if ( ! function_exists( 'espresso_organization_email' )) {
758
+if ( ! function_exists('espresso_organization_email')) {
759 759
 	/**
760 760
 	 * espresso_organization_email
761 761
 	 * @param bool $echo
762 762
 	 * @return string
763 763
 	 */
764
-	function espresso_organization_email( $echo = TRUE ) {
765
-		if($echo){
766
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'email' );
764
+	function espresso_organization_email($echo = TRUE) {
765
+		if ($echo) {
766
+			echo EE_Registry::instance()->CFG->organization->get_pretty('email');
767 767
 			return '';
768 768
 		}
769
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'email' );
769
+		return EE_Registry::instance()->CFG->organization->get_pretty('email');
770 770
 	}
771 771
 }
772 772
 
773
-if ( ! function_exists( 'espresso_organization_logo_url' )) {
773
+if ( ! function_exists('espresso_organization_logo_url')) {
774 774
 	/**
775 775
 	 * espresso_organization_logo_url
776 776
 	 * @param bool $echo
777 777
 	 * @return string
778 778
 	 */
779
-	function espresso_organization_logo_url( $echo = TRUE ) {
780
-		if($echo){
781
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'logo_url' );
779
+	function espresso_organization_logo_url($echo = TRUE) {
780
+		if ($echo) {
781
+			echo EE_Registry::instance()->CFG->organization->get_pretty('logo_url');
782 782
 			return '';
783 783
 		}
784
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'logo_url' );
784
+		return EE_Registry::instance()->CFG->organization->get_pretty('logo_url');
785 785
 	}
786 786
 }
787 787
 
788
-if ( ! function_exists( 'espresso_organization_facebook' )) {
788
+if ( ! function_exists('espresso_organization_facebook')) {
789 789
 	/**
790 790
 	 * espresso_organization_facebook
791 791
 	 * @param bool $echo
792 792
 	 * @return string
793 793
 	 */
794
-	function espresso_organization_facebook( $echo = TRUE ) {
795
-		if($echo){
796
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'facebook' );
794
+	function espresso_organization_facebook($echo = TRUE) {
795
+		if ($echo) {
796
+			echo EE_Registry::instance()->CFG->organization->get_pretty('facebook');
797 797
 			return '';
798 798
 		}
799
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'facebook' );
799
+		return EE_Registry::instance()->CFG->organization->get_pretty('facebook');
800 800
 	}
801 801
 }
802 802
 
803
-if ( ! function_exists( 'espresso_organization_twitter' )) {
803
+if ( ! function_exists('espresso_organization_twitter')) {
804 804
 	/**
805 805
 	 * espresso_organization_twitter
806 806
 	 * @param bool $echo
807 807
 	 * @return string
808 808
 	 */
809
-	function espresso_organization_twitter( $echo = TRUE ) {
810
-		if($echo){
811
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'twitter' );
809
+	function espresso_organization_twitter($echo = TRUE) {
810
+		if ($echo) {
811
+			echo EE_Registry::instance()->CFG->organization->get_pretty('twitter');
812 812
 			return '';
813 813
 		}
814
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'twitter' );
814
+		return EE_Registry::instance()->CFG->organization->get_pretty('twitter');
815 815
 	}
816 816
 }
817 817
 
818
-if ( ! function_exists( 'espresso_organization_linkedin' )) {
818
+if ( ! function_exists('espresso_organization_linkedin')) {
819 819
 	/**
820 820
 	 * espresso_organization_linkedin
821 821
 	 * @param bool $echo
822 822
 	 * @return string
823 823
 	 */
824
-	function espresso_organization_linkedin( $echo = TRUE ) {
825
-		if($echo){
826
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'linkedin' );
824
+	function espresso_organization_linkedin($echo = TRUE) {
825
+		if ($echo) {
826
+			echo EE_Registry::instance()->CFG->organization->get_pretty('linkedin');
827 827
 			return '';
828 828
 		}
829
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'linkedin' );
829
+		return EE_Registry::instance()->CFG->organization->get_pretty('linkedin');
830 830
 	}
831 831
 }
832 832
 
833
-if ( ! function_exists( 'espresso_organization_pinterest' )) {
833
+if ( ! function_exists('espresso_organization_pinterest')) {
834 834
 	/**
835 835
 	 * espresso_organization_pinterest
836 836
 	 * @param bool $echo
837 837
 	 * @return string
838 838
 	 */
839
-	function espresso_organization_pinterest( $echo = TRUE ) {
840
-		if($echo){
841
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'pinterest' );
839
+	function espresso_organization_pinterest($echo = TRUE) {
840
+		if ($echo) {
841
+			echo EE_Registry::instance()->CFG->organization->get_pretty('pinterest');
842 842
 			return '';
843 843
 		}
844
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'pinterest' );
844
+		return EE_Registry::instance()->CFG->organization->get_pretty('pinterest');
845 845
 	}
846 846
 }
847 847
 
848
-if ( ! function_exists( 'espresso_organization_google' )) {
848
+if ( ! function_exists('espresso_organization_google')) {
849 849
 	/**
850 850
 	 * espresso_organization_google
851 851
 	 * @param bool $echo
852 852
 	 * @return string
853 853
 	 */
854
-	function espresso_organization_google( $echo = TRUE ) {
855
-		if($echo){
856
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'google' );
854
+	function espresso_organization_google($echo = TRUE) {
855
+		if ($echo) {
856
+			echo EE_Registry::instance()->CFG->organization->get_pretty('google');
857 857
 			return '';
858 858
 		}
859
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'google' );
859
+		return EE_Registry::instance()->CFG->organization->get_pretty('google');
860 860
 	}
861 861
 }
862 862
 
863
-if ( ! function_exists( 'espresso_organization_instagram' )) {
863
+if ( ! function_exists('espresso_organization_instagram')) {
864 864
 	/**
865 865
 	 * espresso_organization_instagram
866 866
 	 * @param bool $echo
867 867
 	 * @return string
868 868
 	 */
869
-	function espresso_organization_instagram( $echo = TRUE ) {
870
-		if($echo){
871
-			echo EE_Registry::instance()->CFG->organization->get_pretty( 'instagram' );
869
+	function espresso_organization_instagram($echo = TRUE) {
870
+		if ($echo) {
871
+			echo EE_Registry::instance()->CFG->organization->get_pretty('instagram');
872 872
 			return '';
873 873
 		}
874
-		return EE_Registry::instance()->CFG->organization->get_pretty( 'instagram' );
874
+		return EE_Registry::instance()->CFG->organization->get_pretty('instagram');
875 875
 	}
876 876
 }
877 877
 
@@ -881,7 +881,7 @@  discard block
 block discarded – undo
881 881
 
882 882
 
883 883
 
884
-if ( ! function_exists( 'espresso_event_venues' )) {
884
+if ( ! function_exists('espresso_event_venues')) {
885 885
 	/**
886 886
 	 * espresso_event_venues
887 887
 	 *
@@ -895,7 +895,7 @@  discard block
 block discarded – undo
895 895
 
896 896
 
897 897
 
898
-if ( ! function_exists( 'espresso_venue_id' )) {
898
+if ( ! function_exists('espresso_venue_id')) {
899 899
 	/**
900 900
 	 *    espresso_venue_name
901 901
 	 *
@@ -903,15 +903,15 @@  discard block
 block discarded – undo
903 903
 	 * @param     int $EVT_ID
904 904
 	 * @return    string
905 905
 	 */
906
-	function espresso_venue_id( $EVT_ID = 0 ) {
907
-		$venue = EEH_Venue_View::get_venue( $EVT_ID );
906
+	function espresso_venue_id($EVT_ID = 0) {
907
+		$venue = EEH_Venue_View::get_venue($EVT_ID);
908 908
 		return $venue instanceof EE_Venue ? $venue->ID() : 0;
909 909
 	}
910 910
 }
911 911
 
912 912
 
913 913
 
914
-if ( ! function_exists( 'espresso_is_venue_private' ) ) {
914
+if ( ! function_exists('espresso_is_venue_private')) {
915 915
 	/**
916 916
 	 * Return whether a venue is private or not.
917 917
 	 * @see EEH_Venue_View::get_venue() for more info on expected return results.
@@ -920,45 +920,45 @@  discard block
 block discarded – undo
920 920
 	 *
921 921
 	 * @return bool | null
922 922
 	 */
923
-	function espresso_is_venue_private( $VNU_ID = 0 ) {
924
-		return EEH_Venue_View::is_venue_private( $VNU_ID );
923
+	function espresso_is_venue_private($VNU_ID = 0) {
924
+		return EEH_Venue_View::is_venue_private($VNU_ID);
925 925
 	}
926 926
 }
927 927
 
928 928
 
929 929
 
930
-if ( ! function_exists( 'espresso_venue_is_password_protected' ) ) {
930
+if ( ! function_exists('espresso_venue_is_password_protected')) {
931 931
 	/**
932 932
 	 * returns true or false if a venue is password protected or not
933 933
 	 *
934 934
 	 * @param int     $VNU_ID optional, the venue id to check.
935 935
 	 * @return string
936 936
 	 */
937
-	function espresso_venue_is_password_protected( $VNU_ID = 0 ) {
938
-		EE_Registry::instance()->load_helper( 'Venue_View' );
939
-		return EEH_Venue_View::is_venue_password_protected( $VNU_ID );
937
+	function espresso_venue_is_password_protected($VNU_ID = 0) {
938
+		EE_Registry::instance()->load_helper('Venue_View');
939
+		return EEH_Venue_View::is_venue_password_protected($VNU_ID);
940 940
 	}
941 941
 }
942 942
 
943 943
 
944 944
 
945
-if ( ! function_exists( 'espresso_password_protected_venue_form' ) ) {
945
+if ( ! function_exists('espresso_password_protected_venue_form')) {
946 946
 	/**
947 947
 	 * Returns a password form if venue is password protected.
948 948
 	 *
949 949
 	 * @param int     $VNU_ID optional, the venue id to check.
950 950
 	 * @return string
951 951
 	 */
952
-	function espresso_password_protected_venue_form( $VNU_ID = 0 ) {
953
-		EE_Registry::instance()->load_helper( 'Venue_View' );
954
-		return EEH_Venue_View::password_protected_venue_form( $VNU_ID );
952
+	function espresso_password_protected_venue_form($VNU_ID = 0) {
953
+		EE_Registry::instance()->load_helper('Venue_View');
954
+		return EEH_Venue_View::password_protected_venue_form($VNU_ID);
955 955
 	}
956 956
 }
957 957
 
958 958
 
959 959
 
960 960
 
961
-if ( ! function_exists( 'espresso_venue_name' )) {
961
+if ( ! function_exists('espresso_venue_name')) {
962 962
 	/**
963 963
 	 *    espresso_venue_name
964 964
 	 *
@@ -968,19 +968,19 @@  discard block
 block discarded – undo
968 968
 	 * @param bool   $echo
969 969
 	 * @return    string
970 970
 	 */
971
-	function espresso_venue_name( $VNU_ID = 0, $link_to = 'details', $echo = TRUE ) {
972
-		if($echo){
973
-			echo EEH_Venue_View::venue_name( $link_to, $VNU_ID );
971
+	function espresso_venue_name($VNU_ID = 0, $link_to = 'details', $echo = TRUE) {
972
+		if ($echo) {
973
+			echo EEH_Venue_View::venue_name($link_to, $VNU_ID);
974 974
 			return '';
975 975
 		}
976
-		return EEH_Venue_View::venue_name( $link_to, $VNU_ID );
976
+		return EEH_Venue_View::venue_name($link_to, $VNU_ID);
977 977
 	}
978 978
 }
979 979
 
980 980
 
981 981
 
982 982
 
983
-if ( ! function_exists( 'espresso_venue_link' )) {
983
+if ( ! function_exists('espresso_venue_link')) {
984 984
 	/**
985 985
 	 * 	espresso_venue_link
986 986
 	 *
@@ -989,14 +989,14 @@  discard block
 block discarded – undo
989 989
 	 *  @param 	string 	$text
990 990
 	 *  @return 	string
991 991
 	 */
992
-	function espresso_venue_link( $VNU_ID = 0, $text = '' ) {
993
-		return EEH_Venue_View::venue_details_link( $VNU_ID, $text );
992
+	function espresso_venue_link($VNU_ID = 0, $text = '') {
993
+		return EEH_Venue_View::venue_details_link($VNU_ID, $text);
994 994
 	}
995 995
 }
996 996
 
997 997
 
998 998
 
999
-if ( ! function_exists( 'espresso_venue_description' )) {
999
+if ( ! function_exists('espresso_venue_description')) {
1000 1000
 	/**
1001 1001
 	 *    espresso_venue_description
1002 1002
 	 *
@@ -1005,17 +1005,17 @@  discard block
 block discarded – undo
1005 1005
 	 * @param bool $echo
1006 1006
 	 * @return    string
1007 1007
 	 */
1008
-	function espresso_venue_description( $VNU_ID = FALSE, $echo = TRUE ) {
1009
-		if($echo){
1010
-			echo EEH_Venue_View::venue_description( $VNU_ID );
1008
+	function espresso_venue_description($VNU_ID = FALSE, $echo = TRUE) {
1009
+		if ($echo) {
1010
+			echo EEH_Venue_View::venue_description($VNU_ID);
1011 1011
 			return '';
1012 1012
 		}
1013
-		return EEH_Venue_View::venue_description( $VNU_ID );
1013
+		return EEH_Venue_View::venue_description($VNU_ID);
1014 1014
 	}
1015 1015
 }
1016 1016
 
1017 1017
 
1018
-if ( ! function_exists( 'espresso_venue_excerpt' )) {
1018
+if ( ! function_exists('espresso_venue_excerpt')) {
1019 1019
 	/**
1020 1020
 	 *    espresso_venue_excerpt
1021 1021
 	 *
@@ -1024,18 +1024,18 @@  discard block
 block discarded – undo
1024 1024
 	 * @param bool $echo
1025 1025
 	 * @return    string
1026 1026
 	 */
1027
-	function espresso_venue_excerpt( $VNU_ID = 0,  $echo = TRUE ) {
1028
-		if ( $echo ) {
1029
-			echo EEH_Venue_View::venue_excerpt( $VNU_ID );
1027
+	function espresso_venue_excerpt($VNU_ID = 0, $echo = TRUE) {
1028
+		if ($echo) {
1029
+			echo EEH_Venue_View::venue_excerpt($VNU_ID);
1030 1030
 			return '';
1031 1031
 		}
1032
-		return EEH_Venue_View::venue_excerpt( $VNU_ID );
1032
+		return EEH_Venue_View::venue_excerpt($VNU_ID);
1033 1033
 	}
1034 1034
 }
1035 1035
 
1036 1036
 
1037 1037
 
1038
-if ( ! function_exists( 'espresso_venue_categories' )) {
1038
+if ( ! function_exists('espresso_venue_categories')) {
1039 1039
 	/**
1040 1040
 	 * espresso_venue_categories
1041 1041
 	 * returns the terms associated with a venue
@@ -1045,17 +1045,17 @@  discard block
 block discarded – undo
1045 1045
 	 * @param bool $echo
1046 1046
 	 * @return string
1047 1047
 	 */
1048
-	function espresso_venue_categories( $VNU_ID = 0, $hide_uncategorized = TRUE,  $echo = TRUE ) {
1049
-		if ( $echo ) {
1050
-			echo EEH_Venue_View::venue_categories( $VNU_ID, $hide_uncategorized );
1048
+	function espresso_venue_categories($VNU_ID = 0, $hide_uncategorized = TRUE, $echo = TRUE) {
1049
+		if ($echo) {
1050
+			echo EEH_Venue_View::venue_categories($VNU_ID, $hide_uncategorized);
1051 1051
 			return '';
1052 1052
 		}
1053
-		return EEH_Venue_View::venue_categories( $VNU_ID, $hide_uncategorized );
1053
+		return EEH_Venue_View::venue_categories($VNU_ID, $hide_uncategorized);
1054 1054
 	}
1055 1055
 }
1056 1056
 
1057 1057
 
1058
-if ( ! function_exists( 'espresso_venue_address' )) {
1058
+if ( ! function_exists('espresso_venue_address')) {
1059 1059
 	/**
1060 1060
 	 * espresso_venue_address
1061 1061
 	 * returns a formatted block of html  for displaying a venue's address
@@ -1065,17 +1065,17 @@  discard block
 block discarded – undo
1065 1065
 	 * @param bool   $echo
1066 1066
 	 * @return string
1067 1067
 	 */
1068
-	function espresso_venue_address( $type = 'multiline', $VNU_ID = 0, $echo = TRUE ) {
1069
-		if ( $echo ) {
1070
-			echo EEH_Venue_View::venue_address( $type, $VNU_ID );
1068
+	function espresso_venue_address($type = 'multiline', $VNU_ID = 0, $echo = TRUE) {
1069
+		if ($echo) {
1070
+			echo EEH_Venue_View::venue_address($type, $VNU_ID);
1071 1071
 			return '';
1072 1072
 		}
1073
-		return EEH_Venue_View::venue_address( $type, $VNU_ID );
1073
+		return EEH_Venue_View::venue_address($type, $VNU_ID);
1074 1074
 	}
1075 1075
 }
1076 1076
 
1077 1077
 
1078
-if ( ! function_exists( 'espresso_venue_raw_address' )) {
1078
+if ( ! function_exists('espresso_venue_raw_address')) {
1079 1079
 	/**
1080 1080
 	 * espresso_venue_address
1081 1081
 	 * returns an UN-formatted string containing a venue's address
@@ -1085,17 +1085,17 @@  discard block
 block discarded – undo
1085 1085
 	 * @param bool     $echo
1086 1086
 	 * @return string
1087 1087
 	 */
1088
-	function espresso_venue_raw_address( $type = 'multiline', $VNU_ID = 0, $echo = TRUE ) {
1089
-		if ( $echo ) {
1090
-			echo EEH_Venue_View::venue_address( $type, $VNU_ID, FALSE, FALSE );
1088
+	function espresso_venue_raw_address($type = 'multiline', $VNU_ID = 0, $echo = TRUE) {
1089
+		if ($echo) {
1090
+			echo EEH_Venue_View::venue_address($type, $VNU_ID, FALSE, FALSE);
1091 1091
 			return '';
1092 1092
 		}
1093
-		return EEH_Venue_View::venue_address( $type, $VNU_ID, FALSE, FALSE );
1093
+		return EEH_Venue_View::venue_address($type, $VNU_ID, FALSE, FALSE);
1094 1094
 	}
1095 1095
 }
1096 1096
 
1097 1097
 
1098
-if ( ! function_exists( 'espresso_venue_has_address' )) {
1098
+if ( ! function_exists('espresso_venue_has_address')) {
1099 1099
 	/**
1100 1100
 	 * espresso_venue_has_address
1101 1101
 	 * returns TRUE or FALSE if a Venue has address information
@@ -1103,13 +1103,13 @@  discard block
 block discarded – undo
1103 1103
 	 * @param int $VNU_ID
1104 1104
 	 * @return bool
1105 1105
 	 */
1106
-	function espresso_venue_has_address( $VNU_ID = 0 ) {
1107
-		return EEH_Venue_View::venue_has_address( $VNU_ID );
1106
+	function espresso_venue_has_address($VNU_ID = 0) {
1107
+		return EEH_Venue_View::venue_has_address($VNU_ID);
1108 1108
 	}
1109 1109
 }
1110 1110
 
1111 1111
 
1112
-if ( ! function_exists( 'espresso_venue_gmap' )) {
1112
+if ( ! function_exists('espresso_venue_gmap')) {
1113 1113
 	/**
1114 1114
 	 * espresso_venue_gmap
1115 1115
 	 * returns a google map for the venue address
@@ -1120,17 +1120,17 @@  discard block
 block discarded – undo
1120 1120
 	 * @param bool     $echo
1121 1121
 	 * @return string
1122 1122
 	 */
1123
-	function espresso_venue_gmap( $VNU_ID = 0, $map_ID = FALSE, $gmap = array(), $echo = TRUE  ) {
1124
-		if ( $echo ) {
1125
-			echo EEH_Venue_View::venue_gmap( $VNU_ID, $map_ID, $gmap );
1123
+	function espresso_venue_gmap($VNU_ID = 0, $map_ID = FALSE, $gmap = array(), $echo = TRUE) {
1124
+		if ($echo) {
1125
+			echo EEH_Venue_View::venue_gmap($VNU_ID, $map_ID, $gmap);
1126 1126
 			return '';
1127 1127
 		}
1128
-		return EEH_Venue_View::venue_gmap( $VNU_ID, $map_ID, $gmap );
1128
+		return EEH_Venue_View::venue_gmap($VNU_ID, $map_ID, $gmap);
1129 1129
 	}
1130 1130
 }
1131 1131
 
1132 1132
 
1133
-if ( ! function_exists( 'espresso_venue_phone' )) {
1133
+if ( ! function_exists('espresso_venue_phone')) {
1134 1134
 	/**
1135 1135
 	 * espresso_venue_phone
1136 1136
 	 *
@@ -1138,18 +1138,18 @@  discard block
 block discarded – undo
1138 1138
 	 * @param bool $echo
1139 1139
 	 * @return string
1140 1140
 	 */
1141
-	function espresso_venue_phone( $VNU_ID = 0, $echo = TRUE ) {
1142
-		if ( $echo ) {
1143
-			echo EEH_Venue_View::venue_phone( $VNU_ID );
1141
+	function espresso_venue_phone($VNU_ID = 0, $echo = TRUE) {
1142
+		if ($echo) {
1143
+			echo EEH_Venue_View::venue_phone($VNU_ID);
1144 1144
 			return '';
1145 1145
 		}
1146
-		return EEH_Venue_View::venue_phone( $VNU_ID );
1146
+		return EEH_Venue_View::venue_phone($VNU_ID);
1147 1147
 	}
1148 1148
 }
1149 1149
 
1150 1150
 
1151 1151
 
1152
-if ( ! function_exists( 'espresso_venue_website' )) {
1152
+if ( ! function_exists('espresso_venue_website')) {
1153 1153
 	/**
1154 1154
 	 * espresso_venue_website
1155 1155
 	 *
@@ -1157,18 +1157,18 @@  discard block
 block discarded – undo
1157 1157
 	 * @param bool $echo
1158 1158
 	 * @return string
1159 1159
 	 */
1160
-	function espresso_venue_website( $VNU_ID = 0, $echo = TRUE ) {
1161
-		if ( $echo ) {
1162
-			echo EEH_Venue_View::venue_website_link( $VNU_ID );
1160
+	function espresso_venue_website($VNU_ID = 0, $echo = TRUE) {
1161
+		if ($echo) {
1162
+			echo EEH_Venue_View::venue_website_link($VNU_ID);
1163 1163
 			return '';
1164 1164
 		}
1165
-		return EEH_Venue_View::venue_website_link( $VNU_ID );
1165
+		return EEH_Venue_View::venue_website_link($VNU_ID);
1166 1166
 	}
1167 1167
 }
1168 1168
 
1169 1169
 
1170 1170
 
1171
-if ( ! function_exists( 'espresso_edit_venue_link' )) {
1171
+if ( ! function_exists('espresso_edit_venue_link')) {
1172 1172
 	/**
1173 1173
 	 * espresso_edit_venue_link
1174 1174
 	 *
@@ -1176,12 +1176,12 @@  discard block
 block discarded – undo
1176 1176
 	 * @param bool $echo
1177 1177
 	 * @return string
1178 1178
 	 */
1179
-	function espresso_edit_venue_link( $VNU_ID = 0, $echo = TRUE ) {
1180
-		if($echo){
1181
-			echo EEH_Venue_View::edit_venue_link( $VNU_ID );
1179
+	function espresso_edit_venue_link($VNU_ID = 0, $echo = TRUE) {
1180
+		if ($echo) {
1181
+			echo EEH_Venue_View::edit_venue_link($VNU_ID);
1182 1182
 			return '';
1183 1183
 		}
1184
-		return EEH_Venue_View::edit_venue_link( $VNU_ID );
1184
+		return EEH_Venue_View::edit_venue_link($VNU_ID);
1185 1185
 	}
1186 1186
 }
1187 1187
 
Please login to merge, or discard this patch.
core/helpers/EEH_Event_View.helper.php 1 patch
Indentation   +569 added lines, -569 removed lines patch added patch discarded remove patch
@@ -11,578 +11,578 @@
 block discarded – undo
11 11
 class EEH_Event_View extends EEH_Base
12 12
 {
13 13
 
14
-    /**
15
-     * @var EE_Event $_event
16
-     */
17
-    private static $_event = null;
18
-
19
-
20
-
21
-    /**
22
-     * get_event
23
-     * attempts to retrieve an EE_Event object any way it can
24
-     *
25
-     * @param int|WP_Post $EVT_ID
26
-     * @return EE_Event|null
27
-     * @throws \EE_Error
28
-     */
29
-    public static function get_event($EVT_ID = 0)
30
-    {
31
-        // international newspaper?
32
-        global $post;
33
-        $EVT_ID = $EVT_ID instanceof WP_Post && $EVT_ID->post_type === 'espresso_events'
34
-            ? $EVT_ID->ID
35
-            : absint($EVT_ID);
36
-        // do we already have the Event  you are looking for?
37
-        if (EEH_Event_View::$_event instanceof EE_Event && $EVT_ID && EEH_Event_View::$_event->ID() === $EVT_ID) {
38
-            return EEH_Event_View::$_event;
39
-        }
40
-        // reset property so that the new event is cached.
41
-        EEH_Event_View::$_event = null;
42
-        if (! $EVT_ID && $post instanceof EE_Event) {
43
-            EEH_Event_View::$_event = $post;
44
-            return EEH_Event_View::$_event;
45
-        }
46
-        // if the post type is for an event and it has a cached event and we don't have a different incoming $EVT_ID
47
-        // then let's just use that cached event on the $post object.
48
-        if ($post instanceof WP_Post
49
-            && $post->post_type === 'espresso_events'
50
-            && isset($post->EE_Event)
51
-            && (
52
-                $EVT_ID === 0
53
-                || $EVT_ID === $post->ID
54
-            )
55
-        ) {
56
-            EEH_Event_View::$_event = $post->EE_Event;
57
-            return EEH_Event_View::$_event;
58
-        }
59
-        // If the event we have isn't an event but we do have an EVT_ID, let's try getting the event using the ID.
60
-        if (! EEH_Event_View::$_event instanceof EE_Event && $EVT_ID) {
61
-            EEH_Event_View::$_event = EEM_Event::instance()->get_one_by_ID($EVT_ID);
62
-        }
63
-        return EEH_Event_View::$_event;
64
-    }
65
-
66
-
67
-
68
-    /**
69
-     *    display_ticket_selector
70
-     *
71
-     * @access    public
72
-     * @param    int $EVT_ID
73
-     * @return    boolean
74
-     */
75
-    public static function display_ticket_selector($EVT_ID = 0)
76
-    {
77
-        $event = EEH_Event_View::get_event($EVT_ID);
78
-        return $event instanceof EE_Event ? $event->display_ticket_selector() : false;
79
-    }
80
-
81
-
82
-
83
-    /**
84
-     *    event_status
85
-     *
86
-     * @access    public
87
-     * @param    int $EVT_ID
88
-     * @return    string
89
-     */
90
-    public static function event_status($EVT_ID = 0)
91
-    {
92
-        $event = EEH_Event_View::get_event($EVT_ID);
93
-        return $event instanceof EE_Event ? $event->pretty_active_status(false) : '';
94
-    }
95
-
96
-
97
-
98
-    /**
99
-     *  event_active_status
100
-     *
101
-     *  @access     public
102
-     * @param    int $EVT_ID
103
-     *  @return     string
104
-     */
105
-    public static function event_active_status($EVT_ID = 0, $echo = true)
106
-    {
107
-        $event = EEH_Event_View::get_event($EVT_ID);
108
-        return $event instanceof EE_Event ? $event->pretty_active_status($echo) : 'inactive';
109
-    }
110
-
111
-
112
-
113
-    /**
114
-     *  event_has_content_or_excerpt
115
-     *
116
-     *  @access     public
117
-     * @param    int $EVT_ID
118
-     *  @return     string
119
-     */
120
-    public static function event_has_content_or_excerpt($EVT_ID = 0)
121
-    {
122
-        $event = EEH_Event_View::get_event($EVT_ID);
123
-        $has_content_or_excerpt = false;
124
-        if ($event instanceof EE_Event) {
125
-            $has_content_or_excerpt = $event->description() != '' || $event->short_description(null, null, true) != '' ? true : false;
126
-        }
127
-        if (is_archive() && ! ( espresso_display_full_description_in_event_list() || espresso_display_excerpt_in_event_list() )) {
128
-            $has_content_or_excerpt = false;
129
-        }
130
-        return $has_content_or_excerpt;
131
-    }
132
-
133
-
134
-
135
-    /**
136
-     *    event_active_status
137
-     *
138
-     * @access    public
139
-     * @param null $num_words
140
-     * @param null $more
141
-     * @return    string
142
-     */
143
-    public static function event_content_or_excerpt($num_words = null, $more = null)
144
-    {
145
-        global $post;
146
-        ob_start();
147
-        if (( is_single() ) || ( is_archive() && espresso_display_full_description_in_event_list() )) {
148
-            // admin has chosen "full description"
149
-            // for the "Event Espresso - Events > Templates > Display Description" option
150
-            the_content();
151
-        } elseif (( is_archive() && espresso_display_excerpt_in_event_list() )) {
152
-            if (has_excerpt($post->ID)) {
153
-                // admin has chosen "excerpt (short desc)"
154
-                // for the "Event Espresso - Events > Templates > Display Description" option
155
-                // AND an excerpt actually exists
156
-                the_excerpt();
157
-            } else {
158
-                // admin has chosen "excerpt (short desc)"
159
-                // for the "Event Espresso - Events > Templates > Display Description" option
160
-                // but NO excerpt actually exists, so we need to create one
161
-                if (! empty($num_words)) {
162
-                    if (empty($more)) {
163
-                        $more_link_text = __('(more&hellip;)', 'event_espresso');
164
-                        $more = ' <a href="' . get_permalink() . '"';
165
-                        $more .= ' class="more-link"';
166
-                        $more .= \EED_Events_Archive::link_target();
167
-                        $more .= '>' . $more_link_text . '</a>';
168
-                        $more = apply_filters('the_content_more_link', $more, $more_link_text);
169
-                    }
170
-                    $content = str_replace('NOMORELINK', '', get_the_content('NOMORELINK'));
171
-
172
-                    $content =  wp_trim_words($content, $num_words, ' ') . $more;
173
-                } else {
174
-                    $content =  get_the_content();
175
-                }
176
-                global $allowedtags;
177
-                // make sure links are allowed
178
-                $allowedtags['a'] = isset($allowedtags['a'])
179
-                    ? $allowedtags['a']
180
-                    : array();
181
-                // as well as target attribute
182
-                $allowedtags['a']['target'] = isset($allowedtags['a']['target'])
183
-                    ? $allowedtags['a']['target']
184
-                    : false;
185
-                // but get previous value so we can reset it
186
-                $prev_value = $allowedtags['a']['target'];
187
-                $allowedtags['a']['target'] = true;
188
-                $content = wp_kses($content, $allowedtags);
189
-                $content = strip_shortcodes($content);
190
-                echo apply_filters('the_content', $content);
191
-                $allowedtags['a']['target'] = $prev_value;
192
-            }
193
-        } else {
194
-            // admin has chosen "none"
195
-            // for the "Event Espresso - Events > Templates > Display Description" option
196
-            echo apply_filters('the_content', '');
197
-        }
198
-        return ob_get_clean();
199
-    }
200
-
201
-
202
-
203
-    /**
204
-     *  event_tickets_available
205
-     *
206
-     *  @access     public
207
-     * @param    int $EVT_ID
208
-     *  @return     EE_Ticket[]
209
-     */
210
-    public static function event_tickets_available($EVT_ID = 0)
211
-    {
212
-        $event = EEH_Event_View::get_event($EVT_ID);
213
-        $tickets_available_for_purchase = array();
214
-        if ($event instanceof EE_Event) {
215
-            $datetimes = EEH_Event_View::get_all_date_obj($EVT_ID, false);
216
-            foreach ($datetimes as $datetime) {
217
-                $tickets_available_for_purchase = array_merge($tickets_available_for_purchase, $datetime->ticket_types_available_for_purchase());
218
-            }
219
-        }
220
-        return $tickets_available_for_purchase;
221
-    }
222
-
223
-
224
-
225
-    /**
226
-     *    the_event_date
227
-     *
228
-     * @access    public
229
-     * @param    int $EVT_ID
230
-     * @param     bool   $hide_uncategorized
231
-     * @return    string
232
-     */
233
-    public static function event_categories($EVT_ID = 0, $hide_uncategorized = true)
234
-    {
235
-        $category_links = array();
236
-        $event = EEH_Event_View::get_event($EVT_ID);
237
-        if ($event instanceof EE_Event) {
238
-            $event_categories = get_the_terms($event->ID(), 'espresso_event_categories');
239
-            if ($event_categories) {
240
-                // loop thru terms and create links
241
-                foreach ($event_categories as $term) {
242
-                    $url = get_term_link($term, 'espresso_venue_categories');
243
-                    if (! is_wp_error($url) && (( $hide_uncategorized && strtolower($term->name) != __('uncategorized', 'event_espresso')) || ! $hide_uncategorized )) {
244
-                        $category_links[] = '<a href="' . esc_url($url)
245
-                                            . '" rel="tag"'
246
-                                            . \EED_Events_Archive::link_target()
247
-                                            .'>'
248
-                                            . $term->name
249
-                                            . '</a>';
250
-                    }
251
-                }
252
-            }
253
-        }
254
-        return implode(', ', $category_links);
255
-    }
256
-
257
-
258
-
259
-    /**
260
-     *    the_event_date - first date by date order
261
-     *
262
-     * @access    public
263
-     * @param string $dt_frmt
264
-     * @param string $tm_frmt
265
-     * @param int    $EVT_ID
266
-     * @return    string
267
-     */
268
-    public static function the_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
269
-    {
270
-        $datetime = EEH_Event_View::get_primary_date_obj($EVT_ID);
271
-        $format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
272
-        return $datetime instanceof EE_Datetime ? $datetime->get_i18n_datetime('DTT_EVT_start', $format) :  '';
273
-    }
274
-
275
-
276
-
277
-    /**
278
-     *    the_event_end_date - last date by date order
279
-     *
280
-     * @access    public
281
-     * @param string $dt_frmt
282
-     * @param string $tm_frmt
283
-     * @param int    $EVT_ID
284
-     * @return    string
285
-     */
286
-    public static function the_event_end_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
287
-    {
288
-        $datetime = EEH_Event_View::get_last_date_obj($EVT_ID);
289
-        $format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
290
-        return $datetime instanceof EE_Datetime ? $datetime->get_i18n_datetime('DTT_EVT_end', $format) : '';
291
-    }
292
-
293
-
294
-
295
-    /**
296
-     *    the_earliest_event_date - first date chronologically
297
-     *
298
-     * @access    public
299
-     * @param string $dt_frmt
300
-     * @param string $tm_frmt
301
-     * @param int    $EVT_ID
302
-     * @return    string
303
-     */
304
-    public static function the_earliest_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
305
-    {
306
-        $datetime = EEH_Event_View::get_earliest_date_obj($EVT_ID);
307
-        $format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
308
-        return $datetime instanceof EE_Datetime ?  $datetime->get_i18n_datetime('DTT_EVT_start', $format) : '';
309
-    }
310
-
311
-
312
-
313
-    /**
314
-     *    the_latest_event_date - latest date chronologically
315
-     *
316
-     * @access    public
317
-     * @param string $dt_frmt
318
-     * @param string $tm_frmt
319
-     * @param int    $EVT_ID
320
-     * @return    string
321
-     */
322
-    public static function the_latest_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
323
-    {
324
-        $datetime = EEH_Event_View::get_latest_date_obj($EVT_ID);
325
-        $format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
326
-        return $datetime instanceof EE_Datetime ?  $datetime->get_i18n_datetime('DTT_EVT_end', $format) : '';
327
-    }
328
-
329
-
330
-
331
-    /**
332
-     *    event_date_as_calendar_page
333
-     *
334
-     * @access    public
335
-     * @param int $EVT_ID
336
-     * @return    string
337
-     */
338
-    public static function event_date_as_calendar_page($EVT_ID = 0)
339
-    {
340
-        $datetime = EEH_Event_View::get_primary_date_obj($EVT_ID);
341
-        if ($datetime instanceof EE_Datetime) {
342
-    ?>
14
+	/**
15
+	 * @var EE_Event $_event
16
+	 */
17
+	private static $_event = null;
18
+
19
+
20
+
21
+	/**
22
+	 * get_event
23
+	 * attempts to retrieve an EE_Event object any way it can
24
+	 *
25
+	 * @param int|WP_Post $EVT_ID
26
+	 * @return EE_Event|null
27
+	 * @throws \EE_Error
28
+	 */
29
+	public static function get_event($EVT_ID = 0)
30
+	{
31
+		// international newspaper?
32
+		global $post;
33
+		$EVT_ID = $EVT_ID instanceof WP_Post && $EVT_ID->post_type === 'espresso_events'
34
+			? $EVT_ID->ID
35
+			: absint($EVT_ID);
36
+		// do we already have the Event  you are looking for?
37
+		if (EEH_Event_View::$_event instanceof EE_Event && $EVT_ID && EEH_Event_View::$_event->ID() === $EVT_ID) {
38
+			return EEH_Event_View::$_event;
39
+		}
40
+		// reset property so that the new event is cached.
41
+		EEH_Event_View::$_event = null;
42
+		if (! $EVT_ID && $post instanceof EE_Event) {
43
+			EEH_Event_View::$_event = $post;
44
+			return EEH_Event_View::$_event;
45
+		}
46
+		// if the post type is for an event and it has a cached event and we don't have a different incoming $EVT_ID
47
+		// then let's just use that cached event on the $post object.
48
+		if ($post instanceof WP_Post
49
+			&& $post->post_type === 'espresso_events'
50
+			&& isset($post->EE_Event)
51
+			&& (
52
+				$EVT_ID === 0
53
+				|| $EVT_ID === $post->ID
54
+			)
55
+		) {
56
+			EEH_Event_View::$_event = $post->EE_Event;
57
+			return EEH_Event_View::$_event;
58
+		}
59
+		// If the event we have isn't an event but we do have an EVT_ID, let's try getting the event using the ID.
60
+		if (! EEH_Event_View::$_event instanceof EE_Event && $EVT_ID) {
61
+			EEH_Event_View::$_event = EEM_Event::instance()->get_one_by_ID($EVT_ID);
62
+		}
63
+		return EEH_Event_View::$_event;
64
+	}
65
+
66
+
67
+
68
+	/**
69
+	 *    display_ticket_selector
70
+	 *
71
+	 * @access    public
72
+	 * @param    int $EVT_ID
73
+	 * @return    boolean
74
+	 */
75
+	public static function display_ticket_selector($EVT_ID = 0)
76
+	{
77
+		$event = EEH_Event_View::get_event($EVT_ID);
78
+		return $event instanceof EE_Event ? $event->display_ticket_selector() : false;
79
+	}
80
+
81
+
82
+
83
+	/**
84
+	 *    event_status
85
+	 *
86
+	 * @access    public
87
+	 * @param    int $EVT_ID
88
+	 * @return    string
89
+	 */
90
+	public static function event_status($EVT_ID = 0)
91
+	{
92
+		$event = EEH_Event_View::get_event($EVT_ID);
93
+		return $event instanceof EE_Event ? $event->pretty_active_status(false) : '';
94
+	}
95
+
96
+
97
+
98
+	/**
99
+	 *  event_active_status
100
+	 *
101
+	 *  @access     public
102
+	 * @param    int $EVT_ID
103
+	 *  @return     string
104
+	 */
105
+	public static function event_active_status($EVT_ID = 0, $echo = true)
106
+	{
107
+		$event = EEH_Event_View::get_event($EVT_ID);
108
+		return $event instanceof EE_Event ? $event->pretty_active_status($echo) : 'inactive';
109
+	}
110
+
111
+
112
+
113
+	/**
114
+	 *  event_has_content_or_excerpt
115
+	 *
116
+	 *  @access     public
117
+	 * @param    int $EVT_ID
118
+	 *  @return     string
119
+	 */
120
+	public static function event_has_content_or_excerpt($EVT_ID = 0)
121
+	{
122
+		$event = EEH_Event_View::get_event($EVT_ID);
123
+		$has_content_or_excerpt = false;
124
+		if ($event instanceof EE_Event) {
125
+			$has_content_or_excerpt = $event->description() != '' || $event->short_description(null, null, true) != '' ? true : false;
126
+		}
127
+		if (is_archive() && ! ( espresso_display_full_description_in_event_list() || espresso_display_excerpt_in_event_list() )) {
128
+			$has_content_or_excerpt = false;
129
+		}
130
+		return $has_content_or_excerpt;
131
+	}
132
+
133
+
134
+
135
+	/**
136
+	 *    event_active_status
137
+	 *
138
+	 * @access    public
139
+	 * @param null $num_words
140
+	 * @param null $more
141
+	 * @return    string
142
+	 */
143
+	public static function event_content_or_excerpt($num_words = null, $more = null)
144
+	{
145
+		global $post;
146
+		ob_start();
147
+		if (( is_single() ) || ( is_archive() && espresso_display_full_description_in_event_list() )) {
148
+			// admin has chosen "full description"
149
+			// for the "Event Espresso - Events > Templates > Display Description" option
150
+			the_content();
151
+		} elseif (( is_archive() && espresso_display_excerpt_in_event_list() )) {
152
+			if (has_excerpt($post->ID)) {
153
+				// admin has chosen "excerpt (short desc)"
154
+				// for the "Event Espresso - Events > Templates > Display Description" option
155
+				// AND an excerpt actually exists
156
+				the_excerpt();
157
+			} else {
158
+				// admin has chosen "excerpt (short desc)"
159
+				// for the "Event Espresso - Events > Templates > Display Description" option
160
+				// but NO excerpt actually exists, so we need to create one
161
+				if (! empty($num_words)) {
162
+					if (empty($more)) {
163
+						$more_link_text = __('(more&hellip;)', 'event_espresso');
164
+						$more = ' <a href="' . get_permalink() . '"';
165
+						$more .= ' class="more-link"';
166
+						$more .= \EED_Events_Archive::link_target();
167
+						$more .= '>' . $more_link_text . '</a>';
168
+						$more = apply_filters('the_content_more_link', $more, $more_link_text);
169
+					}
170
+					$content = str_replace('NOMORELINK', '', get_the_content('NOMORELINK'));
171
+
172
+					$content =  wp_trim_words($content, $num_words, ' ') . $more;
173
+				} else {
174
+					$content =  get_the_content();
175
+				}
176
+				global $allowedtags;
177
+				// make sure links are allowed
178
+				$allowedtags['a'] = isset($allowedtags['a'])
179
+					? $allowedtags['a']
180
+					: array();
181
+				// as well as target attribute
182
+				$allowedtags['a']['target'] = isset($allowedtags['a']['target'])
183
+					? $allowedtags['a']['target']
184
+					: false;
185
+				// but get previous value so we can reset it
186
+				$prev_value = $allowedtags['a']['target'];
187
+				$allowedtags['a']['target'] = true;
188
+				$content = wp_kses($content, $allowedtags);
189
+				$content = strip_shortcodes($content);
190
+				echo apply_filters('the_content', $content);
191
+				$allowedtags['a']['target'] = $prev_value;
192
+			}
193
+		} else {
194
+			// admin has chosen "none"
195
+			// for the "Event Espresso - Events > Templates > Display Description" option
196
+			echo apply_filters('the_content', '');
197
+		}
198
+		return ob_get_clean();
199
+	}
200
+
201
+
202
+
203
+	/**
204
+	 *  event_tickets_available
205
+	 *
206
+	 *  @access     public
207
+	 * @param    int $EVT_ID
208
+	 *  @return     EE_Ticket[]
209
+	 */
210
+	public static function event_tickets_available($EVT_ID = 0)
211
+	{
212
+		$event = EEH_Event_View::get_event($EVT_ID);
213
+		$tickets_available_for_purchase = array();
214
+		if ($event instanceof EE_Event) {
215
+			$datetimes = EEH_Event_View::get_all_date_obj($EVT_ID, false);
216
+			foreach ($datetimes as $datetime) {
217
+				$tickets_available_for_purchase = array_merge($tickets_available_for_purchase, $datetime->ticket_types_available_for_purchase());
218
+			}
219
+		}
220
+		return $tickets_available_for_purchase;
221
+	}
222
+
223
+
224
+
225
+	/**
226
+	 *    the_event_date
227
+	 *
228
+	 * @access    public
229
+	 * @param    int $EVT_ID
230
+	 * @param     bool   $hide_uncategorized
231
+	 * @return    string
232
+	 */
233
+	public static function event_categories($EVT_ID = 0, $hide_uncategorized = true)
234
+	{
235
+		$category_links = array();
236
+		$event = EEH_Event_View::get_event($EVT_ID);
237
+		if ($event instanceof EE_Event) {
238
+			$event_categories = get_the_terms($event->ID(), 'espresso_event_categories');
239
+			if ($event_categories) {
240
+				// loop thru terms and create links
241
+				foreach ($event_categories as $term) {
242
+					$url = get_term_link($term, 'espresso_venue_categories');
243
+					if (! is_wp_error($url) && (( $hide_uncategorized && strtolower($term->name) != __('uncategorized', 'event_espresso')) || ! $hide_uncategorized )) {
244
+						$category_links[] = '<a href="' . esc_url($url)
245
+											. '" rel="tag"'
246
+											. \EED_Events_Archive::link_target()
247
+											.'>'
248
+											. $term->name
249
+											. '</a>';
250
+					}
251
+				}
252
+			}
253
+		}
254
+		return implode(', ', $category_links);
255
+	}
256
+
257
+
258
+
259
+	/**
260
+	 *    the_event_date - first date by date order
261
+	 *
262
+	 * @access    public
263
+	 * @param string $dt_frmt
264
+	 * @param string $tm_frmt
265
+	 * @param int    $EVT_ID
266
+	 * @return    string
267
+	 */
268
+	public static function the_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
269
+	{
270
+		$datetime = EEH_Event_View::get_primary_date_obj($EVT_ID);
271
+		$format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
272
+		return $datetime instanceof EE_Datetime ? $datetime->get_i18n_datetime('DTT_EVT_start', $format) :  '';
273
+	}
274
+
275
+
276
+
277
+	/**
278
+	 *    the_event_end_date - last date by date order
279
+	 *
280
+	 * @access    public
281
+	 * @param string $dt_frmt
282
+	 * @param string $tm_frmt
283
+	 * @param int    $EVT_ID
284
+	 * @return    string
285
+	 */
286
+	public static function the_event_end_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
287
+	{
288
+		$datetime = EEH_Event_View::get_last_date_obj($EVT_ID);
289
+		$format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
290
+		return $datetime instanceof EE_Datetime ? $datetime->get_i18n_datetime('DTT_EVT_end', $format) : '';
291
+	}
292
+
293
+
294
+
295
+	/**
296
+	 *    the_earliest_event_date - first date chronologically
297
+	 *
298
+	 * @access    public
299
+	 * @param string $dt_frmt
300
+	 * @param string $tm_frmt
301
+	 * @param int    $EVT_ID
302
+	 * @return    string
303
+	 */
304
+	public static function the_earliest_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
305
+	{
306
+		$datetime = EEH_Event_View::get_earliest_date_obj($EVT_ID);
307
+		$format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
308
+		return $datetime instanceof EE_Datetime ?  $datetime->get_i18n_datetime('DTT_EVT_start', $format) : '';
309
+	}
310
+
311
+
312
+
313
+	/**
314
+	 *    the_latest_event_date - latest date chronologically
315
+	 *
316
+	 * @access    public
317
+	 * @param string $dt_frmt
318
+	 * @param string $tm_frmt
319
+	 * @param int    $EVT_ID
320
+	 * @return    string
321
+	 */
322
+	public static function the_latest_event_date($dt_frmt = 'D M jS', $tm_frmt = 'g:i a', $EVT_ID = 0)
323
+	{
324
+		$datetime = EEH_Event_View::get_latest_date_obj($EVT_ID);
325
+		$format = ! empty($dt_frmt) && ! empty($tm_frmt) ? $dt_frmt . ' ' . $tm_frmt : $dt_frmt . $tm_frmt;
326
+		return $datetime instanceof EE_Datetime ?  $datetime->get_i18n_datetime('DTT_EVT_end', $format) : '';
327
+	}
328
+
329
+
330
+
331
+	/**
332
+	 *    event_date_as_calendar_page
333
+	 *
334
+	 * @access    public
335
+	 * @param int $EVT_ID
336
+	 * @return    string
337
+	 */
338
+	public static function event_date_as_calendar_page($EVT_ID = 0)
339
+	{
340
+		$datetime = EEH_Event_View::get_primary_date_obj($EVT_ID);
341
+		if ($datetime instanceof EE_Datetime) {
342
+	?>
343 343
         <div class="event-date-calendar-page-dv">
344 344
             <div class="event-date-calendar-page-month-dv"><?php echo $datetime->get_i18n_datetime('DTT_EVT_start', 'M');?></div>
345 345
             <div class="event-date-calendar-page-day-dv"><?php echo $datetime->start_date('d');?></div>
346 346
         </div>
347 347
     <?php
348
-        }
349
-    }
350
-
351
-
352
-
353
-    /**
354
-     *    get_primary_date_obj - orders date by DTT_order
355
-     *
356
-     * @access    public
357
-     * @param int $EVT_ID
358
-     * @return    string
359
-     */
360
-    public static function get_primary_date_obj($EVT_ID = 0)
361
-    {
362
-        $event = EEH_Event_View::get_event($EVT_ID);
363
-        if ($event instanceof EE_Event) {
364
-            $datetimes = $event->get_many_related(
365
-                'Datetime',
366
-                array(
367
-                    'limit' => 1,
368
-                    'order_by' => array( 'DTT_order' => 'ASC' )
369
-                )
370
-            );
371
-            return reset($datetimes);
372
-        } else {
373
-             return false;
374
-        }
375
-    }
376
-
377
-
378
-
379
-    /**
380
-     *    get_last_date_obj - orders date by DTT_order
381
-     *
382
-     * @access    public
383
-     * @param int $EVT_ID
384
-     * @return    string
385
-     */
386
-    public static function get_last_date_obj($EVT_ID = 0)
387
-    {
388
-        $event = EEH_Event_View::get_event($EVT_ID);
389
-        if ($event instanceof EE_Event) {
390
-            $datetimes = $event->get_many_related(
391
-                'Datetime',
392
-                array(
393
-                    'limit' => 1,
394
-                    'order_by' => array( 'DTT_order' => 'DESC' )
395
-                )
396
-            );
397
-            return end($datetimes);
398
-        } else {
399
-            return false;
400
-        }
401
-    }
402
-
403
-
404
-
405
-    /**
406
-     *    get_earliest_date_obj - orders date chronologically
407
-     *
408
-     * @access    public
409
-     * @param int $EVT_ID
410
-     * @return    string
411
-     */
412
-    public static function get_earliest_date_obj($EVT_ID = 0)
413
-    {
414
-        $event = EEH_Event_View::get_event($EVT_ID);
415
-        if ($event instanceof EE_Event) {
416
-            $datetimes = $event->get_many_related(
417
-                'Datetime',
418
-                array(
419
-                    'limit' => 1,
420
-                    'order_by' => array( 'DTT_EVT_start' => 'ASC' )
421
-                )
422
-            );
423
-            return reset($datetimes);
424
-        } else {
425
-             return false;
426
-        }
427
-    }
428
-
429
-
430
-
431
-    /**
432
-     *    get_latest_date_obj - orders date chronologically
433
-     *
434
-     * @access    public
435
-     * @param int $EVT_ID
436
-     * @return    string
437
-     */
438
-    public static function get_latest_date_obj($EVT_ID = 0)
439
-    {
440
-        $event = EEH_Event_View::get_event($EVT_ID);
441
-        if ($event instanceof EE_Event) {
442
-            $datetimes = $event->get_many_related(
443
-                'Datetime',
444
-                array(
445
-                    'limit' => 1,
446
-                    'order_by' => array( 'DTT_EVT_start' => 'DESC' )
447
-                )
448
-            );
449
-            return end($datetimes);
450
-        } else {
451
-            return false;
452
-        }
453
-    }
454
-
455
-    /**
456
-     *    get_next_upcoming_date_obj - return the next upcoming datetime
457
-     *
458
-     * @access    public
459
-     * @param int $EVT_ID
460
-     * @return    EE_Datetime|null
461
-     */
462
-    public static function get_next_upcoming_date_obj($EVT_ID = 0)
463
-    {
464
-        $datetime = EEM_Datetime::instance()->get_one(
465
-            array(
466
-                array(
467
-                    'Event.EVT_ID' => $EVT_ID,
468
-                    'DTT_EVT_start' => array('>=', current_time('mysql', true))
469
-                ),
470
-                'order_by' => array('DTT_EVT_start' => 'asc')
471
-            )
472
-        );
473
-        return $datetime instanceof EE_Datetime ? $datetime : null;
474
-    }
475
-
476
-    /**
477
-     *    get_all_date_obj
478
-     *
479
-     * @access    public
480
-     * @param int $EVT_ID
481
-     * @param null $include_expired
482
-     * @param bool $include_deleted
483
-     * @param null $limit
484
-     * @return EE_Datetime[]
485
-     */
486
-    public static function get_all_date_obj($EVT_ID = 0, $include_expired = null, $include_deleted = false, $limit = null)
487
-    {
488
-        $event = EEH_Event_View::get_event($EVT_ID);
489
-        if ($include_expired === null) {
490
-            if ($event instanceof EE_Event && $event->is_expired()) {
491
-                $include_expired = true;
492
-            } else {
493
-                $include_expired = false;
494
-            }
495
-        }
496
-
497
-        if ($event instanceof EE_Event) {
498
-            return $event->datetimes_ordered($include_expired, $include_deleted, $limit);
499
-        } else {
500
-             return array();
501
-        }
502
-    }
503
-
504
-
505
-
506
-    /**
507
-     *    event_link_url
508
-     *
509
-     * @access    public
510
-     * @param int $EVT_ID
511
-     * @return    string
512
-     */
513
-    public static function event_link_url($EVT_ID = 0)
514
-    {
515
-        $event = EEH_Event_View::get_event($EVT_ID);
516
-        if ($event instanceof EE_Event) {
517
-            $url = $event->external_url() !== null && $event->external_url() !== '' ? $event->external_url() : get_permalink($event->ID());
518
-            return preg_match("~^(?:f|ht)tps?://~i", $url) ? $url : 'http://' . $url;
519
-        }
520
-        return null;
521
-    }
522
-
523
-
524
-
525
-    /**
526
-     *    event_phone
527
-     *
528
-     * @access    public
529
-     * @param int $EVT_ID
530
-     * @return    string
531
-     */
532
-    public static function event_phone($EVT_ID = 0)
533
-    {
534
-        $event = EEH_Event_View::get_event($EVT_ID);
535
-        if ($event instanceof EE_Event) {
536
-            return EEH_Schema::telephone($event->phone());
537
-        }
538
-        return null;
539
-    }
540
-
541
-
542
-
543
-    /**
544
-     *    edit_event_link
545
-     *
546
-     * @access    public
547
-     * @param int    $EVT_ID
548
-     * @param string $link
549
-     * @param string $before
550
-     * @param string $after
551
-     * @return    string
552
-     */
553
-    public static function edit_event_link($EVT_ID = 0, $link = '', $before = '', $after = '')
554
-    {
555
-        $event = EEH_Event_View::get_event($EVT_ID);
556
-        if ($event instanceof EE_Event) {
557
-            // can the user edit this post ?
558
-            if (current_user_can('edit_post', $event->ID())) {
559
-                // set link text
560
-                $link_text = ! empty($link) ? $link : __('edit this event', 'event_espresso');
561
-                // generate nonce
562
-                $nonce = wp_create_nonce('edit_nonce');
563
-                // generate url to event editor for this event
564
-                $url = add_query_arg(array( 'page' => 'espresso_events', 'action' => 'edit', 'post' => $event->ID(), 'edit_nonce' => $nonce ), admin_url());
565
-                // get edit CPT text
566
-                $post_type_obj = get_post_type_object('espresso_events');
567
-                // build final link html
568
-                $link = '<a class="post-edit-link" href="' . $url . '" ';
569
-                $link .= ' title="' . esc_attr($post_type_obj->labels->edit_item) . '"';
570
-                $link .= \EED_Events_Archive::link_target();
571
-                $link .='>' . $link_text . '</a>';
572
-                // put it all together
573
-                return $before . apply_filters('edit_post_link', $link, $event->ID()) . $after;
574
-            }
575
-        }
576
-        return '';
577
-    }
578
-
579
-
580
-
581
-    /**
582
-     * @return string
583
-     */
584
-    public static function event_archive_url()
585
-    {
586
-        return get_post_type_archive_link('espresso_events');
587
-    }
348
+		}
349
+	}
350
+
351
+
352
+
353
+	/**
354
+	 *    get_primary_date_obj - orders date by DTT_order
355
+	 *
356
+	 * @access    public
357
+	 * @param int $EVT_ID
358
+	 * @return    string
359
+	 */
360
+	public static function get_primary_date_obj($EVT_ID = 0)
361
+	{
362
+		$event = EEH_Event_View::get_event($EVT_ID);
363
+		if ($event instanceof EE_Event) {
364
+			$datetimes = $event->get_many_related(
365
+				'Datetime',
366
+				array(
367
+					'limit' => 1,
368
+					'order_by' => array( 'DTT_order' => 'ASC' )
369
+				)
370
+			);
371
+			return reset($datetimes);
372
+		} else {
373
+			 return false;
374
+		}
375
+	}
376
+
377
+
378
+
379
+	/**
380
+	 *    get_last_date_obj - orders date by DTT_order
381
+	 *
382
+	 * @access    public
383
+	 * @param int $EVT_ID
384
+	 * @return    string
385
+	 */
386
+	public static function get_last_date_obj($EVT_ID = 0)
387
+	{
388
+		$event = EEH_Event_View::get_event($EVT_ID);
389
+		if ($event instanceof EE_Event) {
390
+			$datetimes = $event->get_many_related(
391
+				'Datetime',
392
+				array(
393
+					'limit' => 1,
394
+					'order_by' => array( 'DTT_order' => 'DESC' )
395
+				)
396
+			);
397
+			return end($datetimes);
398
+		} else {
399
+			return false;
400
+		}
401
+	}
402
+
403
+
404
+
405
+	/**
406
+	 *    get_earliest_date_obj - orders date chronologically
407
+	 *
408
+	 * @access    public
409
+	 * @param int $EVT_ID
410
+	 * @return    string
411
+	 */
412
+	public static function get_earliest_date_obj($EVT_ID = 0)
413
+	{
414
+		$event = EEH_Event_View::get_event($EVT_ID);
415
+		if ($event instanceof EE_Event) {
416
+			$datetimes = $event->get_many_related(
417
+				'Datetime',
418
+				array(
419
+					'limit' => 1,
420
+					'order_by' => array( 'DTT_EVT_start' => 'ASC' )
421
+				)
422
+			);
423
+			return reset($datetimes);
424
+		} else {
425
+			 return false;
426
+		}
427
+	}
428
+
429
+
430
+
431
+	/**
432
+	 *    get_latest_date_obj - orders date chronologically
433
+	 *
434
+	 * @access    public
435
+	 * @param int $EVT_ID
436
+	 * @return    string
437
+	 */
438
+	public static function get_latest_date_obj($EVT_ID = 0)
439
+	{
440
+		$event = EEH_Event_View::get_event($EVT_ID);
441
+		if ($event instanceof EE_Event) {
442
+			$datetimes = $event->get_many_related(
443
+				'Datetime',
444
+				array(
445
+					'limit' => 1,
446
+					'order_by' => array( 'DTT_EVT_start' => 'DESC' )
447
+				)
448
+			);
449
+			return end($datetimes);
450
+		} else {
451
+			return false;
452
+		}
453
+	}
454
+
455
+	/**
456
+	 *    get_next_upcoming_date_obj - return the next upcoming datetime
457
+	 *
458
+	 * @access    public
459
+	 * @param int $EVT_ID
460
+	 * @return    EE_Datetime|null
461
+	 */
462
+	public static function get_next_upcoming_date_obj($EVT_ID = 0)
463
+	{
464
+		$datetime = EEM_Datetime::instance()->get_one(
465
+			array(
466
+				array(
467
+					'Event.EVT_ID' => $EVT_ID,
468
+					'DTT_EVT_start' => array('>=', current_time('mysql', true))
469
+				),
470
+				'order_by' => array('DTT_EVT_start' => 'asc')
471
+			)
472
+		);
473
+		return $datetime instanceof EE_Datetime ? $datetime : null;
474
+	}
475
+
476
+	/**
477
+	 *    get_all_date_obj
478
+	 *
479
+	 * @access    public
480
+	 * @param int $EVT_ID
481
+	 * @param null $include_expired
482
+	 * @param bool $include_deleted
483
+	 * @param null $limit
484
+	 * @return EE_Datetime[]
485
+	 */
486
+	public static function get_all_date_obj($EVT_ID = 0, $include_expired = null, $include_deleted = false, $limit = null)
487
+	{
488
+		$event = EEH_Event_View::get_event($EVT_ID);
489
+		if ($include_expired === null) {
490
+			if ($event instanceof EE_Event && $event->is_expired()) {
491
+				$include_expired = true;
492
+			} else {
493
+				$include_expired = false;
494
+			}
495
+		}
496
+
497
+		if ($event instanceof EE_Event) {
498
+			return $event->datetimes_ordered($include_expired, $include_deleted, $limit);
499
+		} else {
500
+			 return array();
501
+		}
502
+	}
503
+
504
+
505
+
506
+	/**
507
+	 *    event_link_url
508
+	 *
509
+	 * @access    public
510
+	 * @param int $EVT_ID
511
+	 * @return    string
512
+	 */
513
+	public static function event_link_url($EVT_ID = 0)
514
+	{
515
+		$event = EEH_Event_View::get_event($EVT_ID);
516
+		if ($event instanceof EE_Event) {
517
+			$url = $event->external_url() !== null && $event->external_url() !== '' ? $event->external_url() : get_permalink($event->ID());
518
+			return preg_match("~^(?:f|ht)tps?://~i", $url) ? $url : 'http://' . $url;
519
+		}
520
+		return null;
521
+	}
522
+
523
+
524
+
525
+	/**
526
+	 *    event_phone
527
+	 *
528
+	 * @access    public
529
+	 * @param int $EVT_ID
530
+	 * @return    string
531
+	 */
532
+	public static function event_phone($EVT_ID = 0)
533
+	{
534
+		$event = EEH_Event_View::get_event($EVT_ID);
535
+		if ($event instanceof EE_Event) {
536
+			return EEH_Schema::telephone($event->phone());
537
+		}
538
+		return null;
539
+	}
540
+
541
+
542
+
543
+	/**
544
+	 *    edit_event_link
545
+	 *
546
+	 * @access    public
547
+	 * @param int    $EVT_ID
548
+	 * @param string $link
549
+	 * @param string $before
550
+	 * @param string $after
551
+	 * @return    string
552
+	 */
553
+	public static function edit_event_link($EVT_ID = 0, $link = '', $before = '', $after = '')
554
+	{
555
+		$event = EEH_Event_View::get_event($EVT_ID);
556
+		if ($event instanceof EE_Event) {
557
+			// can the user edit this post ?
558
+			if (current_user_can('edit_post', $event->ID())) {
559
+				// set link text
560
+				$link_text = ! empty($link) ? $link : __('edit this event', 'event_espresso');
561
+				// generate nonce
562
+				$nonce = wp_create_nonce('edit_nonce');
563
+				// generate url to event editor for this event
564
+				$url = add_query_arg(array( 'page' => 'espresso_events', 'action' => 'edit', 'post' => $event->ID(), 'edit_nonce' => $nonce ), admin_url());
565
+				// get edit CPT text
566
+				$post_type_obj = get_post_type_object('espresso_events');
567
+				// build final link html
568
+				$link = '<a class="post-edit-link" href="' . $url . '" ';
569
+				$link .= ' title="' . esc_attr($post_type_obj->labels->edit_item) . '"';
570
+				$link .= \EED_Events_Archive::link_target();
571
+				$link .='>' . $link_text . '</a>';
572
+				// put it all together
573
+				return $before . apply_filters('edit_post_link', $link, $event->ID()) . $after;
574
+			}
575
+		}
576
+		return '';
577
+	}
578
+
579
+
580
+
581
+	/**
582
+	 * @return string
583
+	 */
584
+	public static function event_archive_url()
585
+	{
586
+		return get_post_type_archive_link('espresso_events');
587
+	}
588 588
 }
Please login to merge, or discard this patch.
core/domain/services/custom_post_types/RegisterCustomPostTypes.php 1 patch
Indentation   +295 added lines, -295 removed lines patch added patch discarded remove patch
@@ -18,314 +18,314 @@
 block discarded – undo
18 18
 class RegisterCustomPostTypes
19 19
 {
20 20
 
21
-    /**
22
-     * @var CustomPostTypeDefinitions $custom_post_types
23
-     */
24
-    public $custom_post_types;
21
+	/**
22
+	 * @var CustomPostTypeDefinitions $custom_post_types
23
+	 */
24
+	public $custom_post_types;
25 25
 
26
-    /**
27
-     * @var WP_Post_Type[] $wp_post_types
28
-     */
29
-    public $wp_post_types = array();
26
+	/**
27
+	 * @var WP_Post_Type[] $wp_post_types
28
+	 */
29
+	public $wp_post_types = array();
30 30
 
31 31
 
32
-    /**
33
-     * RegisterCustomPostTypes constructor.
34
-     *
35
-     * @param CustomPostTypeDefinitions $custom_post_types
36
-     */
37
-    public function __construct(CustomPostTypeDefinitions $custom_post_types)
38
-    {
39
-        $this->custom_post_types = $custom_post_types;
40
-    }
32
+	/**
33
+	 * RegisterCustomPostTypes constructor.
34
+	 *
35
+	 * @param CustomPostTypeDefinitions $custom_post_types
36
+	 */
37
+	public function __construct(CustomPostTypeDefinitions $custom_post_types)
38
+	{
39
+		$this->custom_post_types = $custom_post_types;
40
+	}
41 41
 
42 42
 
43
-    /**
44
-     * @return WP_Post_Type[]
45
-     */
46
-    public function getRegisteredCustomPostTypes()
47
-    {
48
-        return $this->wp_post_types;
49
-    }
43
+	/**
44
+	 * @return WP_Post_Type[]
45
+	 */
46
+	public function getRegisteredCustomPostTypes()
47
+	{
48
+		return $this->wp_post_types;
49
+	}
50 50
 
51 51
 
52
-    /**
53
-     * @return void
54
-     * @throws DomainException
55
-     */
56
-    public function registerCustomPostTypes()
57
-    {
58
-        $custom_post_types = $this->custom_post_types->getDefinitions();
59
-        foreach ($custom_post_types as $custom_post_type => $CPT) {
60
-            $this->wp_post_types[ $custom_post_type ] = $this->registerCustomPostType(
61
-                $custom_post_type,
62
-                $CPT['singular_name'],
63
-                $CPT['plural_name'],
64
-                $CPT['singular_slug'],
65
-                $CPT['plural_slug'],
66
-                $CPT['args']
67
-            );
68
-        }
69
-    }
52
+	/**
53
+	 * @return void
54
+	 * @throws DomainException
55
+	 */
56
+	public function registerCustomPostTypes()
57
+	{
58
+		$custom_post_types = $this->custom_post_types->getDefinitions();
59
+		foreach ($custom_post_types as $custom_post_type => $CPT) {
60
+			$this->wp_post_types[ $custom_post_type ] = $this->registerCustomPostType(
61
+				$custom_post_type,
62
+				$CPT['singular_name'],
63
+				$CPT['plural_name'],
64
+				$CPT['singular_slug'],
65
+				$CPT['plural_slug'],
66
+				$CPT['args']
67
+			);
68
+		}
69
+	}
70 70
 
71 71
 
72
-    /**
73
-     * Registers a new custom post type. Sets default settings given only the following params.
74
-     * Returns the registered post type object, or an error object.
75
-     *
76
-     * @param string $post_type          the actual post type name
77
-     *                                   IMPORTANT:
78
-     *                                   this must match what the slug is for admin pages related to this CPT
79
-     *                                   Also any models must use this slug as well
80
-     * @param string $singular_name      a pre-internationalized string for the singular name of the objects
81
-     * @param string $plural_name        a pre-internationalized string for the plural name of the objects
82
-     * @param string $singular_slug
83
-     * @param string $plural_slug
84
-     * @param array  $override_arguments exactly like $args as described in
85
-     *                                   http://codex.wordpress.org/Function_Reference/register_post_type
86
-     * @return WP_Post_Type|WP_Error
87
-     * @throws DomainException
88
-     */
89
-    public function registerCustomPostType(
90
-        $post_type,
91
-        $singular_name,
92
-        $plural_name,
93
-        $singular_slug = '',
94
-        $plural_slug = '',
95
-        array $override_arguments = array()
96
-    ) {
97
-        $wp_post_type = register_post_type(
98
-            $post_type,
99
-            $this->prepareArguments(
100
-                $post_type,
101
-                $singular_name,
102
-                $plural_name,
103
-                $singular_slug,
104
-                $plural_slug,
105
-                $override_arguments
106
-            )
107
-        );
108
-        if ($wp_post_type instanceof WP_Error) {
109
-            throw new DomainException($wp_post_type->get_error_message());
110
-        }
111
-        return $wp_post_type;
112
-    }
72
+	/**
73
+	 * Registers a new custom post type. Sets default settings given only the following params.
74
+	 * Returns the registered post type object, or an error object.
75
+	 *
76
+	 * @param string $post_type          the actual post type name
77
+	 *                                   IMPORTANT:
78
+	 *                                   this must match what the slug is for admin pages related to this CPT
79
+	 *                                   Also any models must use this slug as well
80
+	 * @param string $singular_name      a pre-internationalized string for the singular name of the objects
81
+	 * @param string $plural_name        a pre-internationalized string for the plural name of the objects
82
+	 * @param string $singular_slug
83
+	 * @param string $plural_slug
84
+	 * @param array  $override_arguments exactly like $args as described in
85
+	 *                                   http://codex.wordpress.org/Function_Reference/register_post_type
86
+	 * @return WP_Post_Type|WP_Error
87
+	 * @throws DomainException
88
+	 */
89
+	public function registerCustomPostType(
90
+		$post_type,
91
+		$singular_name,
92
+		$plural_name,
93
+		$singular_slug = '',
94
+		$plural_slug = '',
95
+		array $override_arguments = array()
96
+	) {
97
+		$wp_post_type = register_post_type(
98
+			$post_type,
99
+			$this->prepareArguments(
100
+				$post_type,
101
+				$singular_name,
102
+				$plural_name,
103
+				$singular_slug,
104
+				$plural_slug,
105
+				$override_arguments
106
+			)
107
+		);
108
+		if ($wp_post_type instanceof WP_Error) {
109
+			throw new DomainException($wp_post_type->get_error_message());
110
+		}
111
+		return $wp_post_type;
112
+	}
113 113
 
114 114
 
115
-    /**
116
-     * @param string $post_type          the actual post type name
117
-     * @param string $singular_name      a pre-internationalized string for the singular name of the objects
118
-     * @param string $plural_name        a pre-internationalized string for the plural name of the objects
119
-     * @param string $singular_slug
120
-     * @param string $plural_slug
121
-     * @param array  $override_arguments The default values set in this function will be overridden
122
-     *                                   by whatever you set in $override_arguments
123
-     * @return array
124
-     */
125
-    protected function prepareArguments(
126
-        $post_type,
127
-        $singular_name,
128
-        $plural_name,
129
-        $singular_slug,
130
-        $plural_slug,
131
-        array $override_arguments = array()
132
-    ) {
133
-        // verify plural slug and singular slug, if they aren't we'll use $singular_name and $plural_name
134
-        $singular_slug = ! empty($singular_slug) ? $singular_slug : $singular_name;
135
-        $plural_slug = ! empty($plural_slug) ? $plural_slug : $plural_name;
136
-        $labels = $this->getLabels(
137
-            $singular_name,
138
-            $plural_name,
139
-            $singular_slug,
140
-            $plural_slug
141
-        );
142
-        // note the page_templates arg in the supports index is something specific to EE.
143
-        // WordPress doesn't actually have that in their register_post_type api.
144
-        $arguments = $this->getDefaultArguments($labels, $post_type, $plural_slug);
145
-        if ($override_arguments) {
146
-            if (isset($override_arguments['labels'])) {
147
-                $labels = array_merge($arguments['labels'], $override_arguments['labels']);
148
-            }
149
-            $arguments = array_merge($arguments, $override_arguments);
150
-            $arguments['labels'] = $labels;
151
-        }
152
-        return $arguments;
153
-    }
115
+	/**
116
+	 * @param string $post_type          the actual post type name
117
+	 * @param string $singular_name      a pre-internationalized string for the singular name of the objects
118
+	 * @param string $plural_name        a pre-internationalized string for the plural name of the objects
119
+	 * @param string $singular_slug
120
+	 * @param string $plural_slug
121
+	 * @param array  $override_arguments The default values set in this function will be overridden
122
+	 *                                   by whatever you set in $override_arguments
123
+	 * @return array
124
+	 */
125
+	protected function prepareArguments(
126
+		$post_type,
127
+		$singular_name,
128
+		$plural_name,
129
+		$singular_slug,
130
+		$plural_slug,
131
+		array $override_arguments = array()
132
+	) {
133
+		// verify plural slug and singular slug, if they aren't we'll use $singular_name and $plural_name
134
+		$singular_slug = ! empty($singular_slug) ? $singular_slug : $singular_name;
135
+		$plural_slug = ! empty($plural_slug) ? $plural_slug : $plural_name;
136
+		$labels = $this->getLabels(
137
+			$singular_name,
138
+			$plural_name,
139
+			$singular_slug,
140
+			$plural_slug
141
+		);
142
+		// note the page_templates arg in the supports index is something specific to EE.
143
+		// WordPress doesn't actually have that in their register_post_type api.
144
+		$arguments = $this->getDefaultArguments($labels, $post_type, $plural_slug);
145
+		if ($override_arguments) {
146
+			if (isset($override_arguments['labels'])) {
147
+				$labels = array_merge($arguments['labels'], $override_arguments['labels']);
148
+			}
149
+			$arguments = array_merge($arguments, $override_arguments);
150
+			$arguments['labels'] = $labels;
151
+		}
152
+		return $arguments;
153
+	}
154 154
 
155 155
 
156
-    /**
157
-     * @param string $singular_name
158
-     * @param string $plural_name
159
-     * @param string $singular_slug
160
-     * @param string $plural_slug
161
-     * @return array
162
-     */
163
-    private function getLabels($singular_name, $plural_name, $singular_slug, $plural_slug)
164
-    {
165
-        return array(
166
-            'name'                     => $plural_name,
167
-            'singular_name'            => $singular_name,
168
-            'singular_slug'            => $singular_slug,
169
-            'plural_slug'              => $plural_slug,
170
-            'add_new'                  => sprintf(
171
-                /* Translators: Post Type Label */
172
-                esc_html_x('Add %s', 'Add Event', 'event_espresso'),
173
-                $singular_name
174
-            ),
175
-            'add_new_item'             => sprintf(
176
-                /* Translators: Post Type Label */
177
-                esc_html_x('Add New %s', 'Add New Event', 'event_espresso'),
178
-                $singular_name
179
-            ),
180
-            'edit_item'                => sprintf(
181
-                /* Translators: Post Type Label */
182
-                esc_html_x('Edit %s', 'Edit Event', 'event_espresso'),
183
-                $singular_name
184
-            ),
185
-            'new_item'                 => sprintf(
186
-                /* Translators: Post Type Label */
187
-                esc_html_x('New %s', 'New Event', 'event_espresso'),
188
-                $singular_name
189
-            ),
190
-            'all_items'                => sprintf(
191
-                /* Translators: Post Type Label */
192
-                esc_html_x('All %s', 'All Events', 'event_espresso'),
193
-                $plural_name
194
-            ),
195
-            'view_item'                => sprintf(
196
-                /* Translators: Post Type Label */
197
-                esc_html_x('View %s', 'View Event', 'event_espresso'),
198
-                $singular_name
199
-            ),
200
-            'view_items'               => sprintf(
201
-                /* Translators: Post Type Label */
202
-                esc_html_x('View %s', 'View Events', 'event_espresso'),
203
-                $plural_name
204
-            ),
205
-            'archives'                 => sprintf(
206
-                /* Translators: Post Type Label */
207
-                esc_html_x('%s Archives', 'Event Archives', 'event_espresso'),
208
-                $singular_name
209
-            ),
210
-            'attributes'               => sprintf(
211
-                /* Translators: Post Type Label */
212
-                esc_html_x('%s Attributes', 'Event Attributes', 'event_espresso'),
213
-                $singular_name
214
-            ),
215
-            'insert_into_item'         => sprintf(
216
-                /* Translators: Post Type Label */
217
-                esc_html_x('Insert into this %s', 'Insert into this Event', 'event_espresso'),
218
-                $singular_name
219
-            ),
220
-            'uploaded_to_this_item'    => sprintf(
221
-                /* Translators: Post Type Label */
222
-                esc_html_x('Uploaded to this %s', 'Uploaded to this Event', 'event_espresso'),
223
-                $singular_name
224
-            ),
225
-            'filter_items_list'        => sprintf(
226
-                /* Translators: Post Type Label */
227
-                esc_html_x('Filter %s list', 'Filter Events list', 'event_espresso'),
228
-                $plural_name
229
-            ),
230
-            'items_list_navigation'    => sprintf(
231
-                /* Translators: Post Type Label */
232
-                esc_html_x('%s list navigation', 'Events list navigation', 'event_espresso'),
233
-                $plural_name
234
-            ),
235
-            'items_list'               => sprintf(
236
-                /* Translators: Post Type Label */
237
-                esc_html_x('%s list', 'Events list', 'event_espresso'),
238
-                $plural_name
239
-            ),
240
-            'item_published'           => sprintf(
241
-                /* Translators: Post Type Label */
242
-                esc_html_x('%s published', 'Event published', 'event_espresso'),
243
-                $singular_name
244
-            ),
245
-            'item_published_privately' => sprintf(
246
-                /* Translators: Post Type Label */
247
-                esc_html_x('%s published privately', 'Event published privately', 'event_espresso'),
248
-                $singular_name
249
-            ),
250
-            'item_reverted_to_draft'   => sprintf(
251
-                /* Translators: Post Type Label */
252
-                esc_html_x('%s reverted to draft', 'Event reverted to draft', 'event_espresso'),
253
-                $singular_name
254
-            ),
255
-            'item_scheduled'           => sprintf(
256
-                /* Translators: Post Type Label */
257
-                esc_html_x('%s scheduled', 'Event scheduled', 'event_espresso'),
258
-                $singular_name
259
-            ),
260
-            'item_updated'             => sprintf(
261
-                /* Translators: Post Type Label */
262
-                esc_html_x('%s updated', 'Event updated', 'event_espresso'),
263
-                $singular_name
264
-            ),
265
-            'search_items'             => sprintf(
266
-                /* Translators: Post Type Label */
267
-                esc_html_x('Search %s', 'Search Events', 'event_espresso'),
268
-                $plural_name
269
-            ),
270
-            'not_found'                => sprintf(
271
-                /* Translators: Post Type Label */
272
-                esc_html_x('No %s found', 'No Events found', 'event_espresso'),
273
-                $plural_name
274
-            ),
275
-            'not_found_in_trash'       => sprintf(
276
-                /* Translators: Post Type Label */
277
-                esc_html_x('No %s found in Trash', 'No Events found in Trash', 'event_espresso'),
278
-                $plural_name
279
-            ),
280
-            'parent_item_colon'        => '',
281
-            'menu_name'                => $plural_name,
282
-        );
283
-    }
156
+	/**
157
+	 * @param string $singular_name
158
+	 * @param string $plural_name
159
+	 * @param string $singular_slug
160
+	 * @param string $plural_slug
161
+	 * @return array
162
+	 */
163
+	private function getLabels($singular_name, $plural_name, $singular_slug, $plural_slug)
164
+	{
165
+		return array(
166
+			'name'                     => $plural_name,
167
+			'singular_name'            => $singular_name,
168
+			'singular_slug'            => $singular_slug,
169
+			'plural_slug'              => $plural_slug,
170
+			'add_new'                  => sprintf(
171
+				/* Translators: Post Type Label */
172
+				esc_html_x('Add %s', 'Add Event', 'event_espresso'),
173
+				$singular_name
174
+			),
175
+			'add_new_item'             => sprintf(
176
+				/* Translators: Post Type Label */
177
+				esc_html_x('Add New %s', 'Add New Event', 'event_espresso'),
178
+				$singular_name
179
+			),
180
+			'edit_item'                => sprintf(
181
+				/* Translators: Post Type Label */
182
+				esc_html_x('Edit %s', 'Edit Event', 'event_espresso'),
183
+				$singular_name
184
+			),
185
+			'new_item'                 => sprintf(
186
+				/* Translators: Post Type Label */
187
+				esc_html_x('New %s', 'New Event', 'event_espresso'),
188
+				$singular_name
189
+			),
190
+			'all_items'                => sprintf(
191
+				/* Translators: Post Type Label */
192
+				esc_html_x('All %s', 'All Events', 'event_espresso'),
193
+				$plural_name
194
+			),
195
+			'view_item'                => sprintf(
196
+				/* Translators: Post Type Label */
197
+				esc_html_x('View %s', 'View Event', 'event_espresso'),
198
+				$singular_name
199
+			),
200
+			'view_items'               => sprintf(
201
+				/* Translators: Post Type Label */
202
+				esc_html_x('View %s', 'View Events', 'event_espresso'),
203
+				$plural_name
204
+			),
205
+			'archives'                 => sprintf(
206
+				/* Translators: Post Type Label */
207
+				esc_html_x('%s Archives', 'Event Archives', 'event_espresso'),
208
+				$singular_name
209
+			),
210
+			'attributes'               => sprintf(
211
+				/* Translators: Post Type Label */
212
+				esc_html_x('%s Attributes', 'Event Attributes', 'event_espresso'),
213
+				$singular_name
214
+			),
215
+			'insert_into_item'         => sprintf(
216
+				/* Translators: Post Type Label */
217
+				esc_html_x('Insert into this %s', 'Insert into this Event', 'event_espresso'),
218
+				$singular_name
219
+			),
220
+			'uploaded_to_this_item'    => sprintf(
221
+				/* Translators: Post Type Label */
222
+				esc_html_x('Uploaded to this %s', 'Uploaded to this Event', 'event_espresso'),
223
+				$singular_name
224
+			),
225
+			'filter_items_list'        => sprintf(
226
+				/* Translators: Post Type Label */
227
+				esc_html_x('Filter %s list', 'Filter Events list', 'event_espresso'),
228
+				$plural_name
229
+			),
230
+			'items_list_navigation'    => sprintf(
231
+				/* Translators: Post Type Label */
232
+				esc_html_x('%s list navigation', 'Events list navigation', 'event_espresso'),
233
+				$plural_name
234
+			),
235
+			'items_list'               => sprintf(
236
+				/* Translators: Post Type Label */
237
+				esc_html_x('%s list', 'Events list', 'event_espresso'),
238
+				$plural_name
239
+			),
240
+			'item_published'           => sprintf(
241
+				/* Translators: Post Type Label */
242
+				esc_html_x('%s published', 'Event published', 'event_espresso'),
243
+				$singular_name
244
+			),
245
+			'item_published_privately' => sprintf(
246
+				/* Translators: Post Type Label */
247
+				esc_html_x('%s published privately', 'Event published privately', 'event_espresso'),
248
+				$singular_name
249
+			),
250
+			'item_reverted_to_draft'   => sprintf(
251
+				/* Translators: Post Type Label */
252
+				esc_html_x('%s reverted to draft', 'Event reverted to draft', 'event_espresso'),
253
+				$singular_name
254
+			),
255
+			'item_scheduled'           => sprintf(
256
+				/* Translators: Post Type Label */
257
+				esc_html_x('%s scheduled', 'Event scheduled', 'event_espresso'),
258
+				$singular_name
259
+			),
260
+			'item_updated'             => sprintf(
261
+				/* Translators: Post Type Label */
262
+				esc_html_x('%s updated', 'Event updated', 'event_espresso'),
263
+				$singular_name
264
+			),
265
+			'search_items'             => sprintf(
266
+				/* Translators: Post Type Label */
267
+				esc_html_x('Search %s', 'Search Events', 'event_espresso'),
268
+				$plural_name
269
+			),
270
+			'not_found'                => sprintf(
271
+				/* Translators: Post Type Label */
272
+				esc_html_x('No %s found', 'No Events found', 'event_espresso'),
273
+				$plural_name
274
+			),
275
+			'not_found_in_trash'       => sprintf(
276
+				/* Translators: Post Type Label */
277
+				esc_html_x('No %s found in Trash', 'No Events found in Trash', 'event_espresso'),
278
+				$plural_name
279
+			),
280
+			'parent_item_colon'        => '',
281
+			'menu_name'                => $plural_name,
282
+		);
283
+	}
284 284
 
285 285
 
286
-    /**
287
-     * @param array  $labels
288
-     * @param string $post_type
289
-     * @param string $plural_slug
290
-     * @return array
291
-     */
292
-    private function getDefaultArguments(array $labels, $post_type, $plural_slug)
293
-    {
294
-        return array(
295
-            'labels'             => $labels,
296
-            'public'             => true,
297
-            'publicly_queryable' => true,
298
-            'show_ui'            => false,
299
-            'show_ee_ui'         => true,
300
-            'show_in_menu'       => false,
301
-            'show_in_nav_menus'  => false,
302
-            'query_var'          => true,
303
-            'rewrite'            => apply_filters(
304
-                'FHEE__EventEspresso_core_domain_entities_custom_post_types_RegisterCustomPostTypes__getDefaultArguments__rewrite',
305
-                // legacy filter applied for now,
306
-                // later on we'll run a has_filter($tag) check and throw a doing_it_wrong() notice
307
-                apply_filters(
308
-                    'FHEE__EE_Register_CPTs__register_CPT__rewrite',
309
-                    array('slug' => $plural_slug),
310
-                    $post_type
311
-                ),
312
-                $post_type,
313
-                $plural_slug
314
-            ),
315
-            'capability_type'    => 'post',
316
-            'map_meta_cap'       => true,
317
-            'has_archive'        => true,
318
-            'hierarchical'       => false,
319
-            'menu_position'      => null,
320
-            'supports'           => array(
321
-                'title',
322
-                'editor',
323
-                'author',
324
-                'thumbnail',
325
-                'excerpt',
326
-                'custom-fields',
327
-                'comments',
328
-            ),
329
-        );
330
-    }
286
+	/**
287
+	 * @param array  $labels
288
+	 * @param string $post_type
289
+	 * @param string $plural_slug
290
+	 * @return array
291
+	 */
292
+	private function getDefaultArguments(array $labels, $post_type, $plural_slug)
293
+	{
294
+		return array(
295
+			'labels'             => $labels,
296
+			'public'             => true,
297
+			'publicly_queryable' => true,
298
+			'show_ui'            => false,
299
+			'show_ee_ui'         => true,
300
+			'show_in_menu'       => false,
301
+			'show_in_nav_menus'  => false,
302
+			'query_var'          => true,
303
+			'rewrite'            => apply_filters(
304
+				'FHEE__EventEspresso_core_domain_entities_custom_post_types_RegisterCustomPostTypes__getDefaultArguments__rewrite',
305
+				// legacy filter applied for now,
306
+				// later on we'll run a has_filter($tag) check and throw a doing_it_wrong() notice
307
+				apply_filters(
308
+					'FHEE__EE_Register_CPTs__register_CPT__rewrite',
309
+					array('slug' => $plural_slug),
310
+					$post_type
311
+				),
312
+				$post_type,
313
+				$plural_slug
314
+			),
315
+			'capability_type'    => 'post',
316
+			'map_meta_cap'       => true,
317
+			'has_archive'        => true,
318
+			'hierarchical'       => false,
319
+			'menu_position'      => null,
320
+			'supports'           => array(
321
+				'title',
322
+				'editor',
323
+				'author',
324
+				'thumbnail',
325
+				'excerpt',
326
+				'custom-fields',
327
+				'comments',
328
+			),
329
+		);
330
+	}
331 331
 }
Please login to merge, or discard this patch.
core/admin/EE_Admin.core.php 2 patches
Indentation   +987 added lines, -987 removed lines patch added patch discarded remove patch
@@ -20,487 +20,487 @@  discard block
 block discarded – undo
20 20
 final class EE_Admin implements InterminableInterface
21 21
 {
22 22
 
23
-    /**
24
-     * @var EE_Admin $_instance
25
-     */
26
-    private static $_instance;
27
-
28
-    /**
29
-     * @var PersistentAdminNoticeManager $persistent_admin_notice_manager
30
-     */
31
-    private $persistent_admin_notice_manager;
32
-
33
-    /**
34
-     * @var LoaderInterface
35
-     */
36
-    protected $loader;
37
-
38
-    /**
39
-     * @singleton method used to instantiate class object
40
-     * @return EE_Admin
41
-     * @throws EE_Error
42
-     */
43
-    public static function instance()
44
-    {
45
-        // check if class object is instantiated
46
-        if (! self::$_instance instanceof EE_Admin) {
47
-            self::$_instance = new self();
48
-        }
49
-        return self::$_instance;
50
-    }
51
-
52
-
53
-    /**
54
-     * @return EE_Admin
55
-     * @throws EE_Error
56
-     */
57
-    public static function reset()
58
-    {
59
-        self::$_instance = null;
60
-        return self::instance();
61
-    }
62
-
63
-
64
-    /**
65
-     * class constructor
66
-     *
67
-     * @throws EE_Error
68
-     * @throws InvalidDataTypeException
69
-     * @throws InvalidInterfaceException
70
-     * @throws InvalidArgumentException
71
-     */
72
-    protected function __construct()
73
-    {
74
-        // define global EE_Admin constants
75
-        $this->_define_all_constants();
76
-        // set autoloaders for our admin page classes based on included path information
77
-        EEH_Autoloader::instance()->register_autoloaders_for_each_file_in_folder(EE_ADMIN);
78
-        // admin hooks
79
-        add_filter('plugin_action_links', array($this, 'filter_plugin_actions'), 10, 2);
80
-        // load EE_Request_Handler early
81
-        add_action('AHEE__EE_System__core_loaded_and_ready', array($this, 'get_request'));
82
-        add_action('AHEE__EE_System__initialize_last', array($this, 'init'));
83
-        add_action('AHEE__EE_Admin_Page__route_admin_request', array($this, 'route_admin_request'), 100, 2);
84
-        add_action('wp_loaded', array($this, 'wp_loaded'), 100);
85
-        add_action('admin_init', array($this, 'admin_init'), 100);
86
-        add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'), 20);
87
-        add_action('admin_notices', array($this, 'display_admin_notices'), 10);
88
-        add_action('network_admin_notices', array($this, 'display_admin_notices'), 10);
89
-        add_filter('pre_update_option', array($this, 'check_for_invalid_datetime_formats'), 100, 2);
90
-        add_filter('admin_footer_text', array($this, 'espresso_admin_footer'));
91
-        add_action('load-plugins.php', array($this, 'hookIntoWpPluginsPage'));
92
-        add_action('display_post_states', array($this, 'displayStateForCriticalPages'), 10, 2);
93
-        // reset Environment config (we only do this on admin page loads);
94
-        EE_Registry::instance()->CFG->environment->recheck_values();
95
-        do_action('AHEE__EE_Admin__loaded');
96
-    }
97
-
98
-
99
-    /**
100
-     * _define_all_constants
101
-     * define constants that are set globally for all admin pages
102
-     *
103
-     * @return void
104
-     */
105
-    private function _define_all_constants()
106
-    {
107
-        if (! defined('EE_ADMIN_URL')) {
108
-            define('EE_ADMIN_URL', EE_PLUGIN_DIR_URL . 'core/admin/');
109
-            define('EE_ADMIN_PAGES_URL', EE_PLUGIN_DIR_URL . 'admin_pages/');
110
-            define('EE_ADMIN_TEMPLATE', EE_ADMIN . 'templates' . DS);
111
-            define('WP_ADMIN_PATH', ABSPATH . 'wp-admin/');
112
-            define('WP_AJAX_URL', admin_url('admin-ajax.php'));
113
-        }
114
-    }
115
-
116
-
117
-    /**
118
-     * filter_plugin_actions - adds links to the Plugins page listing
119
-     *
120
-     * @param    array  $links
121
-     * @param    string $plugin
122
-     * @return    array
123
-     */
124
-    public function filter_plugin_actions($links, $plugin)
125
-    {
126
-        // set $main_file in stone
127
-        static $main_file;
128
-        // if $main_file is not set yet
129
-        if (! $main_file) {
130
-            $main_file = plugin_basename(EVENT_ESPRESSO_MAIN_FILE);
131
-        }
132
-        if ($plugin === $main_file) {
133
-            // compare current plugin to this one
134
-            if (EE_Maintenance_Mode::instance()->level() === EE_Maintenance_Mode::level_2_complete_maintenance) {
135
-                $maintenance_link = '<a href="admin.php?page=espresso_maintenance_settings"'
136
-                                    . ' title="Event Espresso is in maintenance mode.  Click this link to learn why.">'
137
-                                    . esc_html__('Maintenance Mode Active', 'event_espresso')
138
-                                    . '</a>';
139
-                array_unshift($links, $maintenance_link);
140
-            } else {
141
-                $org_settings_link = '<a href="admin.php?page=espresso_general_settings">'
142
-                                     . esc_html__('Settings', 'event_espresso')
143
-                                     . '</a>';
144
-                $events_link = '<a href="admin.php?page=espresso_events">'
145
-                               . esc_html__('Events', 'event_espresso')
146
-                               . '</a>';
147
-                // add before other links
148
-                array_unshift($links, $org_settings_link, $events_link);
149
-            }
150
-        }
151
-        return $links;
152
-    }
153
-
154
-
155
-    /**
156
-     * _get_request
157
-     *
158
-     * @return void
159
-     * @throws EE_Error
160
-     * @throws InvalidArgumentException
161
-     * @throws InvalidDataTypeException
162
-     * @throws InvalidInterfaceException
163
-     * @throws ReflectionException
164
-     */
165
-    public function get_request()
166
-    {
167
-        EE_Registry::instance()->load_core('Request_Handler');
168
-    }
169
-
170
-
171
-    /**
172
-     * hide_admin_pages_except_maintenance_mode
173
-     *
174
-     * @param array $admin_page_folder_names
175
-     * @return array
176
-     */
177
-    public function hide_admin_pages_except_maintenance_mode($admin_page_folder_names = array())
178
-    {
179
-        return array(
180
-            'maintenance' => EE_ADMIN_PAGES . 'maintenance' . DS,
181
-            'about'       => EE_ADMIN_PAGES . 'about' . DS,
182
-            'support'     => EE_ADMIN_PAGES . 'support' . DS,
183
-        );
184
-    }
185
-
186
-
187
-    /**
188
-     * init- should fire after shortcode, module,  addon, other plugin (default priority), and even
189
-     * EE_Front_Controller's init phases have run
190
-     *
191
-     * @return void
192
-     * @throws EE_Error
193
-     * @throws InvalidArgumentException
194
-     * @throws InvalidDataTypeException
195
-     * @throws InvalidInterfaceException
196
-     * @throws ReflectionException
197
-     * @throws ServiceNotFoundException
198
-     */
199
-    public function init()
200
-    {
201
-        // only enable most of the EE_Admin IF we're not in full maintenance mode
202
-        if (EE_Maintenance_Mode::instance()->models_can_query()) {
203
-            $this->initModelsReady();
204
-        }
205
-        // run the admin page factory but ONLY if we are doing an ee admin ajax request
206
-        if (! defined('DOING_AJAX') || EE_ADMIN_AJAX) {
207
-            try {
208
-                // this loads the controller for the admin pages which will setup routing etc
209
-                EE_Registry::instance()->load_core('Admin_Page_Loader');
210
-            } catch (EE_Error $e) {
211
-                $e->get_error();
212
-            }
213
-        }
214
-        add_filter('content_save_pre', array($this, 'its_eSpresso'), 10, 1);
215
-        // make sure our CPTs and custom taxonomy metaboxes get shown for first time users
216
-        add_action('admin_head', array($this, 'enable_hidden_ee_nav_menu_metaboxes'), 10);
217
-        add_action('admin_head', array($this, 'register_custom_nav_menu_boxes'), 10);
218
-        // exclude EE critical pages from all nav menus and wp_list_pages
219
-        add_filter('nav_menu_meta_box_object', array($this, 'remove_pages_from_nav_menu'), 10);
220
-    }
221
-
222
-
223
-    /**
224
-     * Gets the loader (and if it wasn't previously set, sets it)
225
-     * @return LoaderInterface
226
-     * @throws InvalidArgumentException
227
-     * @throws InvalidDataTypeException
228
-     * @throws InvalidInterfaceException
229
-     */
230
-    protected function getLoader()
231
-    {
232
-        if (! $this->loader instanceof LoaderInterface) {
233
-            $this->loader = LoaderFactory::getLoader();
234
-        }
235
-        return $this->loader;
236
-    }
237
-
238
-
239
-    /**
240
-     * Method that's fired on admin requests (including admin ajax) but only when the models are usable
241
-     * (ie, the site isn't in maintenance mode)
242
-     * @since 4.9.63.p
243
-     * @return void
244
-     */
245
-    protected function initModelsReady()
246
-    {
247
-        // ok so we want to enable the entire admin
248
-        $this->persistent_admin_notice_manager = $this->getLoader()->getShared(
249
-            'EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
250
-        );
251
-        $this->persistent_admin_notice_manager->setReturnUrl(
252
-            EE_Admin_Page::add_query_args_and_nonce(
253
-                array(
254
-                    'page'   => EE_Registry::instance()->REQ->get('page', ''),
255
-                    'action' => EE_Registry::instance()->REQ->get('action', ''),
256
-                ),
257
-                EE_ADMIN_URL
258
-            )
259
-        );
260
-        $this->maybeSetDatetimeWarningNotice();
261
-        // at a glance dashboard widget
262
-        add_filter('dashboard_glance_items', array($this, 'dashboard_glance_items'), 10);
263
-        // filter for get_edit_post_link used on comments for custom post types
264
-        add_filter('get_edit_post_link', array($this, 'modify_edit_post_link'), 10, 2);
265
-    }
266
-
267
-
268
-    /**
269
-     *    get_persistent_admin_notices
270
-     *
271
-     * @access    public
272
-     * @return void
273
-     * @throws EE_Error
274
-     * @throws InvalidArgumentException
275
-     * @throws InvalidDataTypeException
276
-     * @throws InvalidInterfaceException
277
-     */
278
-    public function maybeSetDatetimeWarningNotice()
279
-    {
280
-        // add dismissable notice for datetime changes.  Only valid if site does not have a timezone_string set.
281
-        // @todo This needs to stay in core for a bit to catch anyone upgrading from a version without this to a version
282
-        // with this.  But after enough time (indeterminate at this point) we can just remove this notice.
283
-        // this was added with https://events.codebasehq.com/projects/event-espresso/tickets/10626
284
-        if (apply_filters('FHEE__EE_Admin__maybeSetDatetimeWarningNotice', true)
285
-            && ! get_option('timezone_string')
286
-            && EEM_Event::instance()->count() > 0
287
-        ) {
288
-            new PersistentAdminNotice(
289
-                'datetime_fix_notice',
290
-                sprintf(
291
-                    esc_html__(
292
-                        '%1$sImportant announcement related to your install of Event Espresso%2$s: There are some changes made to your site that could affect how dates display for your events and other related items with dates and times.  Read more about it %3$shere%4$s. If your dates and times are displaying incorrectly (incorrect offset), you can fix it using the tool on %5$sthis page%4$s.',
293
-                        'event_espresso'
294
-                    ),
295
-                    '<strong>',
296
-                    '</strong>',
297
-                    '<a href="https://eventespresso.com/2017/08/important-upcoming-changes-dates-times">',
298
-                    '</a>',
299
-                    '<a href="' . EE_Admin_Page::add_query_args_and_nonce(
300
-                        array(
301
-                            'page'   => 'espresso_maintenance_settings',
302
-                            'action' => 'datetime_tools',
303
-                        ),
304
-                        admin_url('admin.php')
305
-                    ) . '">'
306
-                ),
307
-                false,
308
-                'manage_options',
309
-                'datetime_fix_persistent_notice'
310
-            );
311
-        }
312
-    }
313
-
314
-
315
-    /**
316
-     * this simply hooks into the nav menu setup of pages metabox and makes sure that we remove EE critical pages from
317
-     * the list of options. the wp function "wp_nav_menu_item_post_type_meta_box" found in
318
-     * wp-admin/includes/nav-menu.php looks for the "_default_query" property on the post_type object and it uses that
319
-     * to override any queries found in the existing query for the given post type.  Note that _default_query is not a
320
-     * normal property on the post_type object.  It's found ONLY in this particular context.
321
-     *
322
-     * @param WP_Post $post_type WP post type object
323
-     * @return WP_Post
324
-     * @throws InvalidArgumentException
325
-     * @throws InvalidDataTypeException
326
-     * @throws InvalidInterfaceException
327
-     */
328
-    public function remove_pages_from_nav_menu($post_type)
329
-    {
330
-        // if this isn't the "pages" post type let's get out
331
-        if ($post_type->name !== 'page') {
332
-            return $post_type;
333
-        }
334
-        $critical_pages = EE_Registry::instance()->CFG->core->get_critical_pages_array();
335
-        $post_type->_default_query = array(
336
-            'post__not_in' => $critical_pages,
337
-        );
338
-        return $post_type;
339
-    }
340
-
341
-
342
-    /**
343
-     * WP by default only shows three metaboxes in "nav-menus.php" for first times users.  We want to make sure our
344
-     * metaboxes get shown as well
345
-     *
346
-     * @return void
347
-     */
348
-    public function enable_hidden_ee_nav_menu_metaboxes()
349
-    {
350
-        global $wp_meta_boxes, $pagenow;
351
-        if (! is_array($wp_meta_boxes) || $pagenow !== 'nav-menus.php') {
352
-            return;
353
-        }
354
-        $user = wp_get_current_user();
355
-        // has this been done yet?
356
-        if (get_user_option('ee_nav_menu_initialized', $user->ID)) {
357
-            return;
358
-        }
359
-
360
-        $hidden_meta_boxes = get_user_option('metaboxhidden_nav-menus', $user->ID);
361
-        $initial_meta_boxes = apply_filters(
362
-            'FHEE__EE_Admin__enable_hidden_ee_nav_menu_boxes__initial_meta_boxes',
363
-            array(
364
-                'nav-menu-theme-locations',
365
-                'add-page',
366
-                'add-custom-links',
367
-                'add-category',
368
-                'add-espresso_events',
369
-                'add-espresso_venues',
370
-                'add-espresso_event_categories',
371
-                'add-espresso_venue_categories',
372
-                'add-post-type-post',
373
-                'add-post-type-page',
374
-            )
375
-        );
376
-
377
-        if (is_array($hidden_meta_boxes)) {
378
-            foreach ($hidden_meta_boxes as $key => $meta_box_id) {
379
-                if (in_array($meta_box_id, $initial_meta_boxes, true)) {
380
-                    unset($hidden_meta_boxes[ $key ]);
381
-                }
382
-            }
383
-        }
384
-        update_user_option($user->ID, 'metaboxhidden_nav-menus', $hidden_meta_boxes, true);
385
-        update_user_option($user->ID, 'ee_nav_menu_initialized', 1, true);
386
-    }
387
-
388
-
389
-    /**
390
-     * This method simply registers custom nav menu boxes for "nav_menus.php route"
391
-     * Currently EE is using this to make sure there are menu options for our CPT archive page routes.
392
-     *
393
-     * @todo   modify this so its more dynamic and automatic for all ee CPTs and setups and can also be hooked into by
394
-     *         addons etc.
395
-     * @return void
396
-     */
397
-    public function register_custom_nav_menu_boxes()
398
-    {
399
-        add_meta_box(
400
-            'add-extra-nav-menu-pages',
401
-            esc_html__('Event Espresso Pages', 'event_espresso'),
402
-            array($this, 'ee_cpt_archive_pages'),
403
-            'nav-menus',
404
-            'side',
405
-            'core'
406
-        );
407
-    }
408
-
409
-
410
-    /**
411
-     * Use this to edit the post link for our cpts so that the edit link points to the correct page.
412
-     *
413
-     * @since   4.3.0
414
-     * @param string $link the original link generated by wp
415
-     * @param int    $id   post id
416
-     * @return string  the (maybe) modified link
417
-     */
418
-    public function modify_edit_post_link($link, $id)
419
-    {
420
-        if (! $post = get_post($id)) {
421
-            return $link;
422
-        }
423
-        if ($post->post_type === 'espresso_attendees') {
424
-            $query_args = array(
425
-                'action' => 'edit_attendee',
426
-                'post'   => $id,
427
-            );
428
-            return EEH_URL::add_query_args_and_nonce(
429
-                $query_args,
430
-                admin_url('admin.php?page=espresso_registrations')
431
-            );
432
-        }
433
-        return $link;
434
-    }
435
-
436
-
437
-    public function ee_cpt_archive_pages()
438
-    {
439
-        global $nav_menu_selected_id;
440
-        $db_fields = false;
441
-        $walker = new Walker_Nav_Menu_Checklist($db_fields);
442
-        $current_tab = 'event-archives';
443
-        $removed_args = array(
444
-            'action',
445
-            'customlink-tab',
446
-            'edit-menu-item',
447
-            'menu-item',
448
-            'page-tab',
449
-            '_wpnonce',
450
-        );
451
-        ?>
23
+	/**
24
+	 * @var EE_Admin $_instance
25
+	 */
26
+	private static $_instance;
27
+
28
+	/**
29
+	 * @var PersistentAdminNoticeManager $persistent_admin_notice_manager
30
+	 */
31
+	private $persistent_admin_notice_manager;
32
+
33
+	/**
34
+	 * @var LoaderInterface
35
+	 */
36
+	protected $loader;
37
+
38
+	/**
39
+	 * @singleton method used to instantiate class object
40
+	 * @return EE_Admin
41
+	 * @throws EE_Error
42
+	 */
43
+	public static function instance()
44
+	{
45
+		// check if class object is instantiated
46
+		if (! self::$_instance instanceof EE_Admin) {
47
+			self::$_instance = new self();
48
+		}
49
+		return self::$_instance;
50
+	}
51
+
52
+
53
+	/**
54
+	 * @return EE_Admin
55
+	 * @throws EE_Error
56
+	 */
57
+	public static function reset()
58
+	{
59
+		self::$_instance = null;
60
+		return self::instance();
61
+	}
62
+
63
+
64
+	/**
65
+	 * class constructor
66
+	 *
67
+	 * @throws EE_Error
68
+	 * @throws InvalidDataTypeException
69
+	 * @throws InvalidInterfaceException
70
+	 * @throws InvalidArgumentException
71
+	 */
72
+	protected function __construct()
73
+	{
74
+		// define global EE_Admin constants
75
+		$this->_define_all_constants();
76
+		// set autoloaders for our admin page classes based on included path information
77
+		EEH_Autoloader::instance()->register_autoloaders_for_each_file_in_folder(EE_ADMIN);
78
+		// admin hooks
79
+		add_filter('plugin_action_links', array($this, 'filter_plugin_actions'), 10, 2);
80
+		// load EE_Request_Handler early
81
+		add_action('AHEE__EE_System__core_loaded_and_ready', array($this, 'get_request'));
82
+		add_action('AHEE__EE_System__initialize_last', array($this, 'init'));
83
+		add_action('AHEE__EE_Admin_Page__route_admin_request', array($this, 'route_admin_request'), 100, 2);
84
+		add_action('wp_loaded', array($this, 'wp_loaded'), 100);
85
+		add_action('admin_init', array($this, 'admin_init'), 100);
86
+		add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'), 20);
87
+		add_action('admin_notices', array($this, 'display_admin_notices'), 10);
88
+		add_action('network_admin_notices', array($this, 'display_admin_notices'), 10);
89
+		add_filter('pre_update_option', array($this, 'check_for_invalid_datetime_formats'), 100, 2);
90
+		add_filter('admin_footer_text', array($this, 'espresso_admin_footer'));
91
+		add_action('load-plugins.php', array($this, 'hookIntoWpPluginsPage'));
92
+		add_action('display_post_states', array($this, 'displayStateForCriticalPages'), 10, 2);
93
+		// reset Environment config (we only do this on admin page loads);
94
+		EE_Registry::instance()->CFG->environment->recheck_values();
95
+		do_action('AHEE__EE_Admin__loaded');
96
+	}
97
+
98
+
99
+	/**
100
+	 * _define_all_constants
101
+	 * define constants that are set globally for all admin pages
102
+	 *
103
+	 * @return void
104
+	 */
105
+	private function _define_all_constants()
106
+	{
107
+		if (! defined('EE_ADMIN_URL')) {
108
+			define('EE_ADMIN_URL', EE_PLUGIN_DIR_URL . 'core/admin/');
109
+			define('EE_ADMIN_PAGES_URL', EE_PLUGIN_DIR_URL . 'admin_pages/');
110
+			define('EE_ADMIN_TEMPLATE', EE_ADMIN . 'templates' . DS);
111
+			define('WP_ADMIN_PATH', ABSPATH . 'wp-admin/');
112
+			define('WP_AJAX_URL', admin_url('admin-ajax.php'));
113
+		}
114
+	}
115
+
116
+
117
+	/**
118
+	 * filter_plugin_actions - adds links to the Plugins page listing
119
+	 *
120
+	 * @param    array  $links
121
+	 * @param    string $plugin
122
+	 * @return    array
123
+	 */
124
+	public function filter_plugin_actions($links, $plugin)
125
+	{
126
+		// set $main_file in stone
127
+		static $main_file;
128
+		// if $main_file is not set yet
129
+		if (! $main_file) {
130
+			$main_file = plugin_basename(EVENT_ESPRESSO_MAIN_FILE);
131
+		}
132
+		if ($plugin === $main_file) {
133
+			// compare current plugin to this one
134
+			if (EE_Maintenance_Mode::instance()->level() === EE_Maintenance_Mode::level_2_complete_maintenance) {
135
+				$maintenance_link = '<a href="admin.php?page=espresso_maintenance_settings"'
136
+									. ' title="Event Espresso is in maintenance mode.  Click this link to learn why.">'
137
+									. esc_html__('Maintenance Mode Active', 'event_espresso')
138
+									. '</a>';
139
+				array_unshift($links, $maintenance_link);
140
+			} else {
141
+				$org_settings_link = '<a href="admin.php?page=espresso_general_settings">'
142
+									 . esc_html__('Settings', 'event_espresso')
143
+									 . '</a>';
144
+				$events_link = '<a href="admin.php?page=espresso_events">'
145
+							   . esc_html__('Events', 'event_espresso')
146
+							   . '</a>';
147
+				// add before other links
148
+				array_unshift($links, $org_settings_link, $events_link);
149
+			}
150
+		}
151
+		return $links;
152
+	}
153
+
154
+
155
+	/**
156
+	 * _get_request
157
+	 *
158
+	 * @return void
159
+	 * @throws EE_Error
160
+	 * @throws InvalidArgumentException
161
+	 * @throws InvalidDataTypeException
162
+	 * @throws InvalidInterfaceException
163
+	 * @throws ReflectionException
164
+	 */
165
+	public function get_request()
166
+	{
167
+		EE_Registry::instance()->load_core('Request_Handler');
168
+	}
169
+
170
+
171
+	/**
172
+	 * hide_admin_pages_except_maintenance_mode
173
+	 *
174
+	 * @param array $admin_page_folder_names
175
+	 * @return array
176
+	 */
177
+	public function hide_admin_pages_except_maintenance_mode($admin_page_folder_names = array())
178
+	{
179
+		return array(
180
+			'maintenance' => EE_ADMIN_PAGES . 'maintenance' . DS,
181
+			'about'       => EE_ADMIN_PAGES . 'about' . DS,
182
+			'support'     => EE_ADMIN_PAGES . 'support' . DS,
183
+		);
184
+	}
185
+
186
+
187
+	/**
188
+	 * init- should fire after shortcode, module,  addon, other plugin (default priority), and even
189
+	 * EE_Front_Controller's init phases have run
190
+	 *
191
+	 * @return void
192
+	 * @throws EE_Error
193
+	 * @throws InvalidArgumentException
194
+	 * @throws InvalidDataTypeException
195
+	 * @throws InvalidInterfaceException
196
+	 * @throws ReflectionException
197
+	 * @throws ServiceNotFoundException
198
+	 */
199
+	public function init()
200
+	{
201
+		// only enable most of the EE_Admin IF we're not in full maintenance mode
202
+		if (EE_Maintenance_Mode::instance()->models_can_query()) {
203
+			$this->initModelsReady();
204
+		}
205
+		// run the admin page factory but ONLY if we are doing an ee admin ajax request
206
+		if (! defined('DOING_AJAX') || EE_ADMIN_AJAX) {
207
+			try {
208
+				// this loads the controller for the admin pages which will setup routing etc
209
+				EE_Registry::instance()->load_core('Admin_Page_Loader');
210
+			} catch (EE_Error $e) {
211
+				$e->get_error();
212
+			}
213
+		}
214
+		add_filter('content_save_pre', array($this, 'its_eSpresso'), 10, 1);
215
+		// make sure our CPTs and custom taxonomy metaboxes get shown for first time users
216
+		add_action('admin_head', array($this, 'enable_hidden_ee_nav_menu_metaboxes'), 10);
217
+		add_action('admin_head', array($this, 'register_custom_nav_menu_boxes'), 10);
218
+		// exclude EE critical pages from all nav menus and wp_list_pages
219
+		add_filter('nav_menu_meta_box_object', array($this, 'remove_pages_from_nav_menu'), 10);
220
+	}
221
+
222
+
223
+	/**
224
+	 * Gets the loader (and if it wasn't previously set, sets it)
225
+	 * @return LoaderInterface
226
+	 * @throws InvalidArgumentException
227
+	 * @throws InvalidDataTypeException
228
+	 * @throws InvalidInterfaceException
229
+	 */
230
+	protected function getLoader()
231
+	{
232
+		if (! $this->loader instanceof LoaderInterface) {
233
+			$this->loader = LoaderFactory::getLoader();
234
+		}
235
+		return $this->loader;
236
+	}
237
+
238
+
239
+	/**
240
+	 * Method that's fired on admin requests (including admin ajax) but only when the models are usable
241
+	 * (ie, the site isn't in maintenance mode)
242
+	 * @since 4.9.63.p
243
+	 * @return void
244
+	 */
245
+	protected function initModelsReady()
246
+	{
247
+		// ok so we want to enable the entire admin
248
+		$this->persistent_admin_notice_manager = $this->getLoader()->getShared(
249
+			'EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
250
+		);
251
+		$this->persistent_admin_notice_manager->setReturnUrl(
252
+			EE_Admin_Page::add_query_args_and_nonce(
253
+				array(
254
+					'page'   => EE_Registry::instance()->REQ->get('page', ''),
255
+					'action' => EE_Registry::instance()->REQ->get('action', ''),
256
+				),
257
+				EE_ADMIN_URL
258
+			)
259
+		);
260
+		$this->maybeSetDatetimeWarningNotice();
261
+		// at a glance dashboard widget
262
+		add_filter('dashboard_glance_items', array($this, 'dashboard_glance_items'), 10);
263
+		// filter for get_edit_post_link used on comments for custom post types
264
+		add_filter('get_edit_post_link', array($this, 'modify_edit_post_link'), 10, 2);
265
+	}
266
+
267
+
268
+	/**
269
+	 *    get_persistent_admin_notices
270
+	 *
271
+	 * @access    public
272
+	 * @return void
273
+	 * @throws EE_Error
274
+	 * @throws InvalidArgumentException
275
+	 * @throws InvalidDataTypeException
276
+	 * @throws InvalidInterfaceException
277
+	 */
278
+	public function maybeSetDatetimeWarningNotice()
279
+	{
280
+		// add dismissable notice for datetime changes.  Only valid if site does not have a timezone_string set.
281
+		// @todo This needs to stay in core for a bit to catch anyone upgrading from a version without this to a version
282
+		// with this.  But after enough time (indeterminate at this point) we can just remove this notice.
283
+		// this was added with https://events.codebasehq.com/projects/event-espresso/tickets/10626
284
+		if (apply_filters('FHEE__EE_Admin__maybeSetDatetimeWarningNotice', true)
285
+			&& ! get_option('timezone_string')
286
+			&& EEM_Event::instance()->count() > 0
287
+		) {
288
+			new PersistentAdminNotice(
289
+				'datetime_fix_notice',
290
+				sprintf(
291
+					esc_html__(
292
+						'%1$sImportant announcement related to your install of Event Espresso%2$s: There are some changes made to your site that could affect how dates display for your events and other related items with dates and times.  Read more about it %3$shere%4$s. If your dates and times are displaying incorrectly (incorrect offset), you can fix it using the tool on %5$sthis page%4$s.',
293
+						'event_espresso'
294
+					),
295
+					'<strong>',
296
+					'</strong>',
297
+					'<a href="https://eventespresso.com/2017/08/important-upcoming-changes-dates-times">',
298
+					'</a>',
299
+					'<a href="' . EE_Admin_Page::add_query_args_and_nonce(
300
+						array(
301
+							'page'   => 'espresso_maintenance_settings',
302
+							'action' => 'datetime_tools',
303
+						),
304
+						admin_url('admin.php')
305
+					) . '">'
306
+				),
307
+				false,
308
+				'manage_options',
309
+				'datetime_fix_persistent_notice'
310
+			);
311
+		}
312
+	}
313
+
314
+
315
+	/**
316
+	 * this simply hooks into the nav menu setup of pages metabox and makes sure that we remove EE critical pages from
317
+	 * the list of options. the wp function "wp_nav_menu_item_post_type_meta_box" found in
318
+	 * wp-admin/includes/nav-menu.php looks for the "_default_query" property on the post_type object and it uses that
319
+	 * to override any queries found in the existing query for the given post type.  Note that _default_query is not a
320
+	 * normal property on the post_type object.  It's found ONLY in this particular context.
321
+	 *
322
+	 * @param WP_Post $post_type WP post type object
323
+	 * @return WP_Post
324
+	 * @throws InvalidArgumentException
325
+	 * @throws InvalidDataTypeException
326
+	 * @throws InvalidInterfaceException
327
+	 */
328
+	public function remove_pages_from_nav_menu($post_type)
329
+	{
330
+		// if this isn't the "pages" post type let's get out
331
+		if ($post_type->name !== 'page') {
332
+			return $post_type;
333
+		}
334
+		$critical_pages = EE_Registry::instance()->CFG->core->get_critical_pages_array();
335
+		$post_type->_default_query = array(
336
+			'post__not_in' => $critical_pages,
337
+		);
338
+		return $post_type;
339
+	}
340
+
341
+
342
+	/**
343
+	 * WP by default only shows three metaboxes in "nav-menus.php" for first times users.  We want to make sure our
344
+	 * metaboxes get shown as well
345
+	 *
346
+	 * @return void
347
+	 */
348
+	public function enable_hidden_ee_nav_menu_metaboxes()
349
+	{
350
+		global $wp_meta_boxes, $pagenow;
351
+		if (! is_array($wp_meta_boxes) || $pagenow !== 'nav-menus.php') {
352
+			return;
353
+		}
354
+		$user = wp_get_current_user();
355
+		// has this been done yet?
356
+		if (get_user_option('ee_nav_menu_initialized', $user->ID)) {
357
+			return;
358
+		}
359
+
360
+		$hidden_meta_boxes = get_user_option('metaboxhidden_nav-menus', $user->ID);
361
+		$initial_meta_boxes = apply_filters(
362
+			'FHEE__EE_Admin__enable_hidden_ee_nav_menu_boxes__initial_meta_boxes',
363
+			array(
364
+				'nav-menu-theme-locations',
365
+				'add-page',
366
+				'add-custom-links',
367
+				'add-category',
368
+				'add-espresso_events',
369
+				'add-espresso_venues',
370
+				'add-espresso_event_categories',
371
+				'add-espresso_venue_categories',
372
+				'add-post-type-post',
373
+				'add-post-type-page',
374
+			)
375
+		);
376
+
377
+		if (is_array($hidden_meta_boxes)) {
378
+			foreach ($hidden_meta_boxes as $key => $meta_box_id) {
379
+				if (in_array($meta_box_id, $initial_meta_boxes, true)) {
380
+					unset($hidden_meta_boxes[ $key ]);
381
+				}
382
+			}
383
+		}
384
+		update_user_option($user->ID, 'metaboxhidden_nav-menus', $hidden_meta_boxes, true);
385
+		update_user_option($user->ID, 'ee_nav_menu_initialized', 1, true);
386
+	}
387
+
388
+
389
+	/**
390
+	 * This method simply registers custom nav menu boxes for "nav_menus.php route"
391
+	 * Currently EE is using this to make sure there are menu options for our CPT archive page routes.
392
+	 *
393
+	 * @todo   modify this so its more dynamic and automatic for all ee CPTs and setups and can also be hooked into by
394
+	 *         addons etc.
395
+	 * @return void
396
+	 */
397
+	public function register_custom_nav_menu_boxes()
398
+	{
399
+		add_meta_box(
400
+			'add-extra-nav-menu-pages',
401
+			esc_html__('Event Espresso Pages', 'event_espresso'),
402
+			array($this, 'ee_cpt_archive_pages'),
403
+			'nav-menus',
404
+			'side',
405
+			'core'
406
+		);
407
+	}
408
+
409
+
410
+	/**
411
+	 * Use this to edit the post link for our cpts so that the edit link points to the correct page.
412
+	 *
413
+	 * @since   4.3.0
414
+	 * @param string $link the original link generated by wp
415
+	 * @param int    $id   post id
416
+	 * @return string  the (maybe) modified link
417
+	 */
418
+	public function modify_edit_post_link($link, $id)
419
+	{
420
+		if (! $post = get_post($id)) {
421
+			return $link;
422
+		}
423
+		if ($post->post_type === 'espresso_attendees') {
424
+			$query_args = array(
425
+				'action' => 'edit_attendee',
426
+				'post'   => $id,
427
+			);
428
+			return EEH_URL::add_query_args_and_nonce(
429
+				$query_args,
430
+				admin_url('admin.php?page=espresso_registrations')
431
+			);
432
+		}
433
+		return $link;
434
+	}
435
+
436
+
437
+	public function ee_cpt_archive_pages()
438
+	{
439
+		global $nav_menu_selected_id;
440
+		$db_fields = false;
441
+		$walker = new Walker_Nav_Menu_Checklist($db_fields);
442
+		$current_tab = 'event-archives';
443
+		$removed_args = array(
444
+			'action',
445
+			'customlink-tab',
446
+			'edit-menu-item',
447
+			'menu-item',
448
+			'page-tab',
449
+			'_wpnonce',
450
+		);
451
+		?>
452 452
         <div id="posttype-extra-nav-menu-pages" class="posttypediv">
453 453
             <ul id="posttype-extra-nav-menu-pages-tabs" class="posttype-tabs add-menu-item-tabs">
454 454
                 <li <?php echo('event-archives' === $current_tab ? ' class="tabs"' : ''); ?>>
455 455
                     <a class="nav-tab-link" data-type="tabs-panel-posttype-extra-nav-menu-pages-event-archives"
456 456
                        href="<?php
457
-                        if ($nav_menu_selected_id) {
458
-                            echo esc_url(
459
-                                add_query_arg(
460
-                                    'extra-nav-menu-pages-tab',
461
-                                    'event-archives',
462
-                                    remove_query_arg($removed_args)
463
-                                )
464
-                            );
465
-                        }
466
-                        ?>#tabs-panel-posttype-extra-nav-menu-pages-event-archives">
457
+						if ($nav_menu_selected_id) {
458
+							echo esc_url(
459
+								add_query_arg(
460
+									'extra-nav-menu-pages-tab',
461
+									'event-archives',
462
+									remove_query_arg($removed_args)
463
+								)
464
+							);
465
+						}
466
+						?>#tabs-panel-posttype-extra-nav-menu-pages-event-archives">
467 467
                         <?php _e('Event Archive Pages', 'event_espresso'); ?>
468 468
                     </a>
469 469
                 </li>
470 470
             </ul><!-- .posttype-tabs -->
471 471
 
472 472
             <div id="tabs-panel-posttype-extra-nav-menu-pages-event-archives" class="tabs-panel <?php
473
-            echo('event-archives' === $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive');
474
-            ?>">
473
+			echo('event-archives' === $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive');
474
+			?>">
475 475
                 <ul id="extra-nav-menu-pageschecklist-event-archives" class="categorychecklist form-no-clear">
476 476
                     <?php
477
-                    $pages = $this->_get_extra_nav_menu_pages_items();
478
-                    $args['walker'] = $walker;
479
-                    echo walk_nav_menu_tree(
480
-                        array_map(
481
-                            array($this, '_setup_extra_nav_menu_pages_items'),
482
-                            $pages
483
-                        ),
484
-                        0,
485
-                        (object) $args
486
-                    );
487
-                    ?>
477
+					$pages = $this->_get_extra_nav_menu_pages_items();
478
+					$args['walker'] = $walker;
479
+					echo walk_nav_menu_tree(
480
+						array_map(
481
+							array($this, '_setup_extra_nav_menu_pages_items'),
482
+							$pages
483
+						),
484
+						0,
485
+						(object) $args
486
+					);
487
+					?>
488 488
                 </ul>
489 489
             </div><!-- /.tabs-panel -->
490 490
 
491 491
             <p class="button-controls">
492 492
                 <span class="list-controls">
493 493
                     <a href="<?php
494
-                             echo esc_url(
495
-                                 add_query_arg(
496
-                                     array(
497
-                                         'extra-nav-menu-pages-tab' => 'event-archives',
498
-                                         'selectall'                => 1,
499
-                                     ),
500
-                                     remove_query_arg($removed_args)
501
-                                 )
502
-                             );
503
-                        ?>#posttype-extra-nav-menu-pages>" class="select-all"><?php _e('Select All', 'event_espresso'); ?></a>
494
+							 echo esc_url(
495
+								 add_query_arg(
496
+									 array(
497
+										 'extra-nav-menu-pages-tab' => 'event-archives',
498
+										 'selectall'                => 1,
499
+									 ),
500
+									 remove_query_arg($removed_args)
501
+								 )
502
+							 );
503
+						?>#posttype-extra-nav-menu-pages>" class="select-all"><?php _e('Select All', 'event_espresso'); ?></a>
504 504
                 </span>
505 505
                 <span class="add-to-menu">
506 506
                     <input type="submit"<?php wp_nav_menu_disabled_check($nav_menu_selected_id); ?>
@@ -513,529 +513,529 @@  discard block
 block discarded – undo
513 513
 
514 514
         </div><!-- /.posttypediv -->
515 515
         <?php
516
-    }
517
-
518
-
519
-    /**
520
-     * Returns an array of event archive nav items.
521
-     *
522
-     * @todo  for now this method is just in place so when it gets abstracted further we can substitute in whatever
523
-     *        method we use for getting the extra nav menu items
524
-     * @return array
525
-     */
526
-    private function _get_extra_nav_menu_pages_items()
527
-    {
528
-        $menuitems[] = array(
529
-            'title'       => esc_html__('Event List', 'event_espresso'),
530
-            'url'         => get_post_type_archive_link('espresso_events'),
531
-            'description' => esc_html__('Archive page for all events.', 'event_espresso'),
532
-        );
533
-        return apply_filters('FHEE__EE_Admin__get_extra_nav_menu_pages_items', $menuitems);
534
-    }
535
-
536
-
537
-    /**
538
-     * Setup nav menu walker item for usage in the event archive nav menu metabox.  It receives a menu_item array with
539
-     * the properties and converts it to the menu item object.
540
-     *
541
-     * @see wp_setup_nav_menu_item() in wp-includes/nav-menu.php
542
-     * @param $menu_item_values
543
-     * @return stdClass
544
-     */
545
-    private function _setup_extra_nav_menu_pages_items($menu_item_values)
546
-    {
547
-        $menu_item = new stdClass();
548
-        $keys = array(
549
-            'ID'               => 0,
550
-            'db_id'            => 0,
551
-            'menu_item_parent' => 0,
552
-            'object_id'        => -1,
553
-            'post_parent'      => 0,
554
-            'type'             => 'custom',
555
-            'object'           => '',
556
-            'type_label'       => esc_html__('Extra Nav Menu Item', 'event_espresso'),
557
-            'title'            => '',
558
-            'url'              => '',
559
-            'target'           => '',
560
-            'attr_title'       => '',
561
-            'description'      => '',
562
-            'classes'          => array(),
563
-            'xfn'              => '',
564
-        );
565
-
566
-        foreach ($keys as $key => $value) {
567
-            $menu_item->{$key} = isset($menu_item_values[ $key ]) ? $menu_item_values[ $key ] : $value;
568
-        }
569
-        return $menu_item;
570
-    }
571
-
572
-
573
-    /**
574
-     * This is the action hook for the AHEE__EE_Admin_Page__route_admin_request hook that fires off right before an
575
-     * EE_Admin_Page route is called.
576
-     *
577
-     * @return void
578
-     */
579
-    public function route_admin_request()
580
-    {
581
-    }
582
-
583
-
584
-    /**
585
-     * wp_loaded should fire on the WordPress wp_loaded hook.  This fires on a VERY late priority.
586
-     *
587
-     * @return void
588
-     */
589
-    public function wp_loaded()
590
-    {
591
-    }
592
-
593
-
594
-    /**
595
-     * admin_init
596
-     *
597
-     * @return void
598
-     * @throws EE_Error
599
-     * @throws InvalidArgumentException
600
-     * @throws InvalidDataTypeException
601
-     * @throws InvalidInterfaceException
602
-     * @throws ReflectionException
603
-     */
604
-    public function admin_init()
605
-    {
606
-        /**
607
-         * our cpt models must be instantiated on WordPress post processing routes (wp-admin/post.php),
608
-         * so any hooking into core WP routes is taken care of.  So in this next few lines of code:
609
-         * - check if doing post processing.
610
-         * - check if doing post processing of one of EE CPTs
611
-         * - instantiate the corresponding EE CPT model for the post_type being processed.
612
-         */
613
-        if (isset($_POST['action'], $_POST['post_type']) && $_POST['action'] === 'editpost') {
614
-            /** @var EventEspresso\core\domain\entities\custom_post_types\CustomPostTypeDefinitions $custom_post_types */
615
-            $custom_post_types = $this->getLoader()->getShared(
616
-                'EventEspresso\core\domain\entities\custom_post_types\CustomPostTypeDefinitions'
617
-            );
618
-            $custom_post_types->getCustomPostTypeModels($_POST['post_type']);
619
-        }
620
-
621
-
622
-        /**
623
-         * This code excludes EE critical pages anywhere `wp_dropdown_pages` is used to create a dropdown for selecting
624
-         * critical pages.  The only place critical pages need included in a generated dropdown is on the "Critical
625
-         * Pages" tab in the EE General Settings Admin page.
626
-         * This is for user-proofing.
627
-         */
628
-        add_filter('wp_dropdown_pages', array($this, 'modify_dropdown_pages'));
629
-        if (EE_Maintenance_Mode::instance()->models_can_query()) {
630
-            $this->adminInitModelsReady();
631
-        }
632
-    }
633
-
634
-
635
-    /**
636
-     * Runs on admin_init but only if models are usable (ie, we're not in maintenanc emode)
637
-     */
638
-    protected function adminInitModelsReady()
639
-    {
640
-        if (function_exists('wp_add_privacy_policy_content')) {
641
-            $this->getLoader()->getShared('EventEspresso\core\services\privacy\policy\PrivacyPolicyManager');
642
-        }
643
-    }
644
-
645
-
646
-    /**
647
-     * Callback for wp_dropdown_pages hook to remove ee critical pages from the dropdown selection.
648
-     *
649
-     * @param string $output Current output.
650
-     * @return string
651
-     * @throws InvalidArgumentException
652
-     * @throws InvalidDataTypeException
653
-     * @throws InvalidInterfaceException
654
-     */
655
-    public function modify_dropdown_pages($output)
656
-    {
657
-        // get critical pages
658
-        $critical_pages = EE_Registry::instance()->CFG->core->get_critical_pages_array();
659
-
660
-        // split current output by line break for easier parsing.
661
-        $split_output = explode("\n", $output);
662
-
663
-        // loop through to remove any critical pages from the array.
664
-        foreach ($critical_pages as $page_id) {
665
-            $needle = 'value="' . $page_id . '"';
666
-            foreach ($split_output as $key => $haystack) {
667
-                if (strpos($haystack, $needle) !== false) {
668
-                    unset($split_output[ $key ]);
669
-                }
670
-            }
671
-        }
672
-        // replace output with the new contents
673
-        return implode("\n", $split_output);
674
-    }
675
-
676
-
677
-    /**
678
-     * enqueue all admin scripts that need loaded for admin pages
679
-     *
680
-     * @return void
681
-     */
682
-    public function enqueue_admin_scripts()
683
-    {
684
-        // this javascript is loaded on every admin page to catch any injections ee needs to add to wp run js.
685
-        // Note: the intention of this script is to only do TARGETED injections.  I.E, only injecting on certain script
686
-        // calls.
687
-        wp_enqueue_script(
688
-            'ee-inject-wp',
689
-            EE_ADMIN_URL . 'assets/ee-cpt-wp-injects.js',
690
-            array('jquery'),
691
-            EVENT_ESPRESSO_VERSION,
692
-            true
693
-        );
694
-        // register cookie script for future dependencies
695
-        wp_register_script(
696
-            'jquery-cookie',
697
-            EE_THIRD_PARTY_URL . 'joyride/jquery.cookie.js',
698
-            array('jquery'),
699
-            '2.1',
700
-            true
701
-        );
702
-        // joyride is turned OFF by default, but prior to the admin_enqueue_scripts hook, can be turned back on again
703
-        // via: add_filter('FHEE_load_joyride', '__return_true' );
704
-        if (apply_filters('FHEE_load_joyride', false)) {
705
-            // joyride style
706
-            wp_register_style('joyride-css', EE_THIRD_PARTY_URL . 'joyride/joyride-2.1.css', array(), '2.1');
707
-            wp_register_style(
708
-                'ee-joyride-css',
709
-                EE_GLOBAL_ASSETS_URL . 'css/ee-joyride-styles.css',
710
-                array('joyride-css'),
711
-                EVENT_ESPRESSO_VERSION
712
-            );
713
-            wp_register_script(
714
-                'joyride-modernizr',
715
-                EE_THIRD_PARTY_URL . 'joyride/modernizr.mq.js',
716
-                array(),
717
-                '2.1',
718
-                true
719
-            );
720
-            // joyride JS
721
-            wp_register_script(
722
-                'jquery-joyride',
723
-                EE_THIRD_PARTY_URL . 'joyride/jquery.joyride-2.1.js',
724
-                array('jquery-cookie', 'joyride-modernizr'),
725
-                '2.1',
726
-                true
727
-            );
728
-            // wanna go for a joyride?
729
-            wp_enqueue_style('ee-joyride-css');
730
-            wp_enqueue_script('jquery-joyride');
731
-        }
732
-    }
733
-
734
-
735
-    /**
736
-     * display_admin_notices
737
-     *
738
-     * @return void
739
-     */
740
-    public function display_admin_notices()
741
-    {
742
-        echo EE_Error::get_notices();
743
-    }
744
-
745
-
746
-    /**
747
-     * @param array $elements
748
-     * @return array
749
-     * @throws EE_Error
750
-     * @throws InvalidArgumentException
751
-     * @throws InvalidDataTypeException
752
-     * @throws InvalidInterfaceException
753
-     */
754
-    public function dashboard_glance_items($elements)
755
-    {
756
-        $elements = is_array($elements) ? $elements : array($elements);
757
-        $events = EEM_Event::instance()->count();
758
-        $items['events']['url'] = EE_Admin_Page::add_query_args_and_nonce(
759
-            array('page' => 'espresso_events'),
760
-            admin_url('admin.php')
761
-        );
762
-        $items['events']['text'] = sprintf(_n('%s Event', '%s Events', $events, 'event_espresso'), number_format_i18n($events));
763
-        $items['events']['title'] = esc_html__('Click to view all Events', 'event_espresso');
764
-        $registrations = EEM_Registration::instance()->count(
765
-            array(
766
-                array(
767
-                    'STS_ID' => array('!=', EEM_Registration::status_id_incomplete),
768
-                ),
769
-            )
770
-        );
771
-        $items['registrations']['url'] = EE_Admin_Page::add_query_args_and_nonce(
772
-            array('page' => 'espresso_registrations'),
773
-            admin_url('admin.php')
774
-        );
775
-        $items['registrations']['text'] = sprintf(
776
-            _n('%s Registration', '%s Registrations', $registrations, 'event_espresso'),
777
-            number_format_i18n($registrations)
778
-        );
779
-        $items['registrations']['title'] = esc_html__('Click to view all registrations', 'event_espresso');
780
-
781
-        $items = (array) apply_filters('FHEE__EE_Admin__dashboard_glance_items__items', $items);
782
-
783
-        foreach ($items as $type => $item_properties) {
784
-            $elements[] = sprintf(
785
-                '<a class="ee-dashboard-link-' . $type . '" href="%s" title="%s">%s</a>',
786
-                $item_properties['url'],
787
-                $item_properties['title'],
788
-                $item_properties['text']
789
-            );
790
-        }
791
-        return $elements;
792
-    }
793
-
794
-
795
-    /**
796
-     * check_for_invalid_datetime_formats
797
-     * if an admin changes their date or time format settings on the WP General Settings admin page, verify that
798
-     * their selected format can be parsed by PHP
799
-     *
800
-     * @param    $value
801
-     * @param    $option
802
-     * @throws EE_Error
803
-     * @return    string
804
-     */
805
-    public function check_for_invalid_datetime_formats($value, $option)
806
-    {
807
-        // check for date_format or time_format
808
-        switch ($option) {
809
-            case 'date_format':
810
-                $date_time_format = $value . ' ' . get_option('time_format');
811
-                break;
812
-            case 'time_format':
813
-                $date_time_format = get_option('date_format') . ' ' . $value;
814
-                break;
815
-            default:
816
-                $date_time_format = false;
817
-        }
818
-        // do we have a date_time format to check ?
819
-        if ($date_time_format) {
820
-            $error_msg = EEH_DTT_Helper::validate_format_string($date_time_format);
821
-
822
-            if (is_array($error_msg)) {
823
-                $msg = '<p>'
824
-                       . sprintf(
825
-                           esc_html__(
826
-                               'The following date time "%s" ( %s ) is difficult to be properly parsed by PHP for the following reasons:',
827
-                               'event_espresso'
828
-                           ),
829
-                           date($date_time_format),
830
-                           $date_time_format
831
-                       )
832
-                       . '</p><p><ul>';
833
-
834
-
835
-                foreach ($error_msg as $error) {
836
-                    $msg .= '<li>' . $error . '</li>';
837
-                }
838
-
839
-                $msg .= '</ul></p><p>'
840
-                        . sprintf(
841
-                            esc_html__(
842
-                                '%sPlease note that your date and time formats have been reset to "F j, Y" and "g:i a" respectively.%s',
843
-                                'event_espresso'
844
-                            ),
845
-                            '<span style="color:#D54E21;">',
846
-                            '</span>'
847
-                        )
848
-                        . '</p>';
849
-
850
-                // trigger WP settings error
851
-                add_settings_error(
852
-                    'date_format',
853
-                    'date_format',
854
-                    $msg
855
-                );
856
-
857
-                // set format to something valid
858
-                switch ($option) {
859
-                    case 'date_format':
860
-                        $value = 'F j, Y';
861
-                        break;
862
-                    case 'time_format':
863
-                        $value = 'g:i a';
864
-                        break;
865
-                }
866
-            }
867
-        }
868
-        return $value;
869
-    }
870
-
871
-
872
-    /**
873
-     * its_eSpresso - converts the less commonly used spelling of "Expresso" to "Espresso"
874
-     *
875
-     * @param $content
876
-     * @return    string
877
-     */
878
-    public function its_eSpresso($content)
879
-    {
880
-        return str_replace('[EXPRESSO_', '[ESPRESSO_', $content);
881
-    }
882
-
883
-
884
-    /**
885
-     * espresso_admin_footer
886
-     *
887
-     * @return    string
888
-     */
889
-    public function espresso_admin_footer()
890
-    {
891
-        return \EEH_Template::powered_by_event_espresso('aln-cntr', '', array('utm_content' => 'admin_footer'));
892
-    }
893
-
894
-
895
-    /**
896
-     * static method for registering ee admin page.
897
-     * This method is deprecated in favor of the new location in EE_Register_Admin_Page::register.
898
-     *
899
-     * @since      4.3.0
900
-     * @deprecated 4.3.0    Use EE_Register_Admin_Page::register() instead
901
-     * @see        EE_Register_Admin_Page::register()
902
-     * @param       $page_basename
903
-     * @param       $page_path
904
-     * @param array $config
905
-     * @return void
906
-     * @throws EE_Error
907
-     */
908
-    public static function register_ee_admin_page($page_basename, $page_path, $config = array())
909
-    {
910
-        EE_Error::doing_it_wrong(
911
-            __METHOD__,
912
-            sprintf(
913
-                esc_html__(
914
-                    'Usage is deprecated.  Use EE_Register_Admin_Page::register() for registering the %s admin page.',
915
-                    'event_espresso'
916
-                ),
917
-                $page_basename
918
-            ),
919
-            '4.3'
920
-        );
921
-        if (class_exists('EE_Register_Admin_Page')) {
922
-            $config['page_path'] = $page_path;
923
-        }
924
-        EE_Register_Admin_Page::register($page_basename, $config);
925
-    }
926
-
927
-
928
-    /**
929
-     * @deprecated 4.8.41
930
-     * @param  int      $post_ID
931
-     * @param  \WP_Post $post
932
-     * @return void
933
-     */
934
-    public static function parse_post_content_on_save($post_ID, $post)
935
-    {
936
-        EE_Error::doing_it_wrong(
937
-            __METHOD__,
938
-            esc_html__('Usage is deprecated', 'event_espresso'),
939
-            '4.8.41'
940
-        );
941
-    }
942
-
943
-
944
-    /**
945
-     * @deprecated 4.8.41
946
-     * @param  $option
947
-     * @param  $old_value
948
-     * @param  $value
949
-     * @return void
950
-     */
951
-    public function reset_page_for_posts_on_change($option, $old_value, $value)
952
-    {
953
-        EE_Error::doing_it_wrong(
954
-            __METHOD__,
955
-            esc_html__('Usage is deprecated', 'event_espresso'),
956
-            '4.8.41'
957
-        );
958
-    }
959
-
960
-
961
-    /**
962
-     * @deprecated 4.9.27
963
-     * @return void
964
-     */
965
-    public function get_persistent_admin_notices()
966
-    {
967
-        EE_Error::doing_it_wrong(
968
-            __METHOD__,
969
-            sprintf(
970
-                __('Usage is deprecated. Use "%1$s" instead.', 'event_espresso'),
971
-                '\EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
972
-            ),
973
-            '4.9.27'
974
-        );
975
-    }
976
-
977
-
978
-    /**
979
-     * @deprecated 4.9.27
980
-     * @throws InvalidInterfaceException
981
-     * @throws InvalidDataTypeException
982
-     * @throws DomainException
983
-     */
984
-    public function dismiss_ee_nag_notice_callback()
985
-    {
986
-        EE_Error::doing_it_wrong(
987
-            __METHOD__,
988
-            sprintf(
989
-                __('Usage is deprecated. Use "%1$s" instead.', 'event_espresso'),
990
-                '\EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
991
-            ),
992
-            '4.9.27'
993
-        );
994
-        $this->persistent_admin_notice_manager->dismissNotice();
995
-    }
996
-
997
-
998
-    /**
999
-     * Callback on load-plugins.php hook for setting up anything hooking into the wp plugins page.
1000
-     *
1001
-     * @throws InvalidArgumentException
1002
-     * @throws InvalidDataTypeException
1003
-     * @throws InvalidInterfaceException
1004
-     */
1005
-    public function hookIntoWpPluginsPage()
1006
-    {
1007
-        $this->getLoader()->getShared('EventEspresso\core\domain\services\admin\ExitModal');
1008
-        $this->getLoader()
1009
-                     ->getShared('EventEspresso\core\domain\services\admin\PluginUpsells')
1010
-                     ->decafUpsells();
1011
-    }
1012
-
1013
-
1014
-    /**
1015
-     * Hooks into the "post states" filter in a wp post type list table.
1016
-     *
1017
-     * @param array   $post_states
1018
-     * @param WP_Post $post
1019
-     * @return array
1020
-     * @throws InvalidArgumentException
1021
-     * @throws InvalidDataTypeException
1022
-     * @throws InvalidInterfaceException
1023
-     */
1024
-    public function displayStateForCriticalPages($post_states, $post)
1025
-    {
1026
-        $post_states = (array) $post_states;
1027
-        if (! $post instanceof WP_Post || $post->post_type !== 'page') {
1028
-            return $post_states;
1029
-        }
1030
-        /** @var EE_Core_Config $config */
1031
-        $config = $this->getLoader()->getShared('EE_Config')->core;
1032
-        if (in_array($post->ID, $config->get_critical_pages_array(), true)) {
1033
-            $post_states[] = sprintf(
1034
-                /* Translators: Using company name - Event Espresso Critical Page */
1035
-                esc_html__('%s Critical Page', 'event_espresso'),
1036
-                'Event Espresso'
1037
-            );
1038
-        }
1039
-        return $post_states;
1040
-    }
516
+	}
517
+
518
+
519
+	/**
520
+	 * Returns an array of event archive nav items.
521
+	 *
522
+	 * @todo  for now this method is just in place so when it gets abstracted further we can substitute in whatever
523
+	 *        method we use for getting the extra nav menu items
524
+	 * @return array
525
+	 */
526
+	private function _get_extra_nav_menu_pages_items()
527
+	{
528
+		$menuitems[] = array(
529
+			'title'       => esc_html__('Event List', 'event_espresso'),
530
+			'url'         => get_post_type_archive_link('espresso_events'),
531
+			'description' => esc_html__('Archive page for all events.', 'event_espresso'),
532
+		);
533
+		return apply_filters('FHEE__EE_Admin__get_extra_nav_menu_pages_items', $menuitems);
534
+	}
535
+
536
+
537
+	/**
538
+	 * Setup nav menu walker item for usage in the event archive nav menu metabox.  It receives a menu_item array with
539
+	 * the properties and converts it to the menu item object.
540
+	 *
541
+	 * @see wp_setup_nav_menu_item() in wp-includes/nav-menu.php
542
+	 * @param $menu_item_values
543
+	 * @return stdClass
544
+	 */
545
+	private function _setup_extra_nav_menu_pages_items($menu_item_values)
546
+	{
547
+		$menu_item = new stdClass();
548
+		$keys = array(
549
+			'ID'               => 0,
550
+			'db_id'            => 0,
551
+			'menu_item_parent' => 0,
552
+			'object_id'        => -1,
553
+			'post_parent'      => 0,
554
+			'type'             => 'custom',
555
+			'object'           => '',
556
+			'type_label'       => esc_html__('Extra Nav Menu Item', 'event_espresso'),
557
+			'title'            => '',
558
+			'url'              => '',
559
+			'target'           => '',
560
+			'attr_title'       => '',
561
+			'description'      => '',
562
+			'classes'          => array(),
563
+			'xfn'              => '',
564
+		);
565
+
566
+		foreach ($keys as $key => $value) {
567
+			$menu_item->{$key} = isset($menu_item_values[ $key ]) ? $menu_item_values[ $key ] : $value;
568
+		}
569
+		return $menu_item;
570
+	}
571
+
572
+
573
+	/**
574
+	 * This is the action hook for the AHEE__EE_Admin_Page__route_admin_request hook that fires off right before an
575
+	 * EE_Admin_Page route is called.
576
+	 *
577
+	 * @return void
578
+	 */
579
+	public function route_admin_request()
580
+	{
581
+	}
582
+
583
+
584
+	/**
585
+	 * wp_loaded should fire on the WordPress wp_loaded hook.  This fires on a VERY late priority.
586
+	 *
587
+	 * @return void
588
+	 */
589
+	public function wp_loaded()
590
+	{
591
+	}
592
+
593
+
594
+	/**
595
+	 * admin_init
596
+	 *
597
+	 * @return void
598
+	 * @throws EE_Error
599
+	 * @throws InvalidArgumentException
600
+	 * @throws InvalidDataTypeException
601
+	 * @throws InvalidInterfaceException
602
+	 * @throws ReflectionException
603
+	 */
604
+	public function admin_init()
605
+	{
606
+		/**
607
+		 * our cpt models must be instantiated on WordPress post processing routes (wp-admin/post.php),
608
+		 * so any hooking into core WP routes is taken care of.  So in this next few lines of code:
609
+		 * - check if doing post processing.
610
+		 * - check if doing post processing of one of EE CPTs
611
+		 * - instantiate the corresponding EE CPT model for the post_type being processed.
612
+		 */
613
+		if (isset($_POST['action'], $_POST['post_type']) && $_POST['action'] === 'editpost') {
614
+			/** @var EventEspresso\core\domain\entities\custom_post_types\CustomPostTypeDefinitions $custom_post_types */
615
+			$custom_post_types = $this->getLoader()->getShared(
616
+				'EventEspresso\core\domain\entities\custom_post_types\CustomPostTypeDefinitions'
617
+			);
618
+			$custom_post_types->getCustomPostTypeModels($_POST['post_type']);
619
+		}
620
+
621
+
622
+		/**
623
+		 * This code excludes EE critical pages anywhere `wp_dropdown_pages` is used to create a dropdown for selecting
624
+		 * critical pages.  The only place critical pages need included in a generated dropdown is on the "Critical
625
+		 * Pages" tab in the EE General Settings Admin page.
626
+		 * This is for user-proofing.
627
+		 */
628
+		add_filter('wp_dropdown_pages', array($this, 'modify_dropdown_pages'));
629
+		if (EE_Maintenance_Mode::instance()->models_can_query()) {
630
+			$this->adminInitModelsReady();
631
+		}
632
+	}
633
+
634
+
635
+	/**
636
+	 * Runs on admin_init but only if models are usable (ie, we're not in maintenanc emode)
637
+	 */
638
+	protected function adminInitModelsReady()
639
+	{
640
+		if (function_exists('wp_add_privacy_policy_content')) {
641
+			$this->getLoader()->getShared('EventEspresso\core\services\privacy\policy\PrivacyPolicyManager');
642
+		}
643
+	}
644
+
645
+
646
+	/**
647
+	 * Callback for wp_dropdown_pages hook to remove ee critical pages from the dropdown selection.
648
+	 *
649
+	 * @param string $output Current output.
650
+	 * @return string
651
+	 * @throws InvalidArgumentException
652
+	 * @throws InvalidDataTypeException
653
+	 * @throws InvalidInterfaceException
654
+	 */
655
+	public function modify_dropdown_pages($output)
656
+	{
657
+		// get critical pages
658
+		$critical_pages = EE_Registry::instance()->CFG->core->get_critical_pages_array();
659
+
660
+		// split current output by line break for easier parsing.
661
+		$split_output = explode("\n", $output);
662
+
663
+		// loop through to remove any critical pages from the array.
664
+		foreach ($critical_pages as $page_id) {
665
+			$needle = 'value="' . $page_id . '"';
666
+			foreach ($split_output as $key => $haystack) {
667
+				if (strpos($haystack, $needle) !== false) {
668
+					unset($split_output[ $key ]);
669
+				}
670
+			}
671
+		}
672
+		// replace output with the new contents
673
+		return implode("\n", $split_output);
674
+	}
675
+
676
+
677
+	/**
678
+	 * enqueue all admin scripts that need loaded for admin pages
679
+	 *
680
+	 * @return void
681
+	 */
682
+	public function enqueue_admin_scripts()
683
+	{
684
+		// this javascript is loaded on every admin page to catch any injections ee needs to add to wp run js.
685
+		// Note: the intention of this script is to only do TARGETED injections.  I.E, only injecting on certain script
686
+		// calls.
687
+		wp_enqueue_script(
688
+			'ee-inject-wp',
689
+			EE_ADMIN_URL . 'assets/ee-cpt-wp-injects.js',
690
+			array('jquery'),
691
+			EVENT_ESPRESSO_VERSION,
692
+			true
693
+		);
694
+		// register cookie script for future dependencies
695
+		wp_register_script(
696
+			'jquery-cookie',
697
+			EE_THIRD_PARTY_URL . 'joyride/jquery.cookie.js',
698
+			array('jquery'),
699
+			'2.1',
700
+			true
701
+		);
702
+		// joyride is turned OFF by default, but prior to the admin_enqueue_scripts hook, can be turned back on again
703
+		// via: add_filter('FHEE_load_joyride', '__return_true' );
704
+		if (apply_filters('FHEE_load_joyride', false)) {
705
+			// joyride style
706
+			wp_register_style('joyride-css', EE_THIRD_PARTY_URL . 'joyride/joyride-2.1.css', array(), '2.1');
707
+			wp_register_style(
708
+				'ee-joyride-css',
709
+				EE_GLOBAL_ASSETS_URL . 'css/ee-joyride-styles.css',
710
+				array('joyride-css'),
711
+				EVENT_ESPRESSO_VERSION
712
+			);
713
+			wp_register_script(
714
+				'joyride-modernizr',
715
+				EE_THIRD_PARTY_URL . 'joyride/modernizr.mq.js',
716
+				array(),
717
+				'2.1',
718
+				true
719
+			);
720
+			// joyride JS
721
+			wp_register_script(
722
+				'jquery-joyride',
723
+				EE_THIRD_PARTY_URL . 'joyride/jquery.joyride-2.1.js',
724
+				array('jquery-cookie', 'joyride-modernizr'),
725
+				'2.1',
726
+				true
727
+			);
728
+			// wanna go for a joyride?
729
+			wp_enqueue_style('ee-joyride-css');
730
+			wp_enqueue_script('jquery-joyride');
731
+		}
732
+	}
733
+
734
+
735
+	/**
736
+	 * display_admin_notices
737
+	 *
738
+	 * @return void
739
+	 */
740
+	public function display_admin_notices()
741
+	{
742
+		echo EE_Error::get_notices();
743
+	}
744
+
745
+
746
+	/**
747
+	 * @param array $elements
748
+	 * @return array
749
+	 * @throws EE_Error
750
+	 * @throws InvalidArgumentException
751
+	 * @throws InvalidDataTypeException
752
+	 * @throws InvalidInterfaceException
753
+	 */
754
+	public function dashboard_glance_items($elements)
755
+	{
756
+		$elements = is_array($elements) ? $elements : array($elements);
757
+		$events = EEM_Event::instance()->count();
758
+		$items['events']['url'] = EE_Admin_Page::add_query_args_and_nonce(
759
+			array('page' => 'espresso_events'),
760
+			admin_url('admin.php')
761
+		);
762
+		$items['events']['text'] = sprintf(_n('%s Event', '%s Events', $events, 'event_espresso'), number_format_i18n($events));
763
+		$items['events']['title'] = esc_html__('Click to view all Events', 'event_espresso');
764
+		$registrations = EEM_Registration::instance()->count(
765
+			array(
766
+				array(
767
+					'STS_ID' => array('!=', EEM_Registration::status_id_incomplete),
768
+				),
769
+			)
770
+		);
771
+		$items['registrations']['url'] = EE_Admin_Page::add_query_args_and_nonce(
772
+			array('page' => 'espresso_registrations'),
773
+			admin_url('admin.php')
774
+		);
775
+		$items['registrations']['text'] = sprintf(
776
+			_n('%s Registration', '%s Registrations', $registrations, 'event_espresso'),
777
+			number_format_i18n($registrations)
778
+		);
779
+		$items['registrations']['title'] = esc_html__('Click to view all registrations', 'event_espresso');
780
+
781
+		$items = (array) apply_filters('FHEE__EE_Admin__dashboard_glance_items__items', $items);
782
+
783
+		foreach ($items as $type => $item_properties) {
784
+			$elements[] = sprintf(
785
+				'<a class="ee-dashboard-link-' . $type . '" href="%s" title="%s">%s</a>',
786
+				$item_properties['url'],
787
+				$item_properties['title'],
788
+				$item_properties['text']
789
+			);
790
+		}
791
+		return $elements;
792
+	}
793
+
794
+
795
+	/**
796
+	 * check_for_invalid_datetime_formats
797
+	 * if an admin changes their date or time format settings on the WP General Settings admin page, verify that
798
+	 * their selected format can be parsed by PHP
799
+	 *
800
+	 * @param    $value
801
+	 * @param    $option
802
+	 * @throws EE_Error
803
+	 * @return    string
804
+	 */
805
+	public function check_for_invalid_datetime_formats($value, $option)
806
+	{
807
+		// check for date_format or time_format
808
+		switch ($option) {
809
+			case 'date_format':
810
+				$date_time_format = $value . ' ' . get_option('time_format');
811
+				break;
812
+			case 'time_format':
813
+				$date_time_format = get_option('date_format') . ' ' . $value;
814
+				break;
815
+			default:
816
+				$date_time_format = false;
817
+		}
818
+		// do we have a date_time format to check ?
819
+		if ($date_time_format) {
820
+			$error_msg = EEH_DTT_Helper::validate_format_string($date_time_format);
821
+
822
+			if (is_array($error_msg)) {
823
+				$msg = '<p>'
824
+					   . sprintf(
825
+						   esc_html__(
826
+							   'The following date time "%s" ( %s ) is difficult to be properly parsed by PHP for the following reasons:',
827
+							   'event_espresso'
828
+						   ),
829
+						   date($date_time_format),
830
+						   $date_time_format
831
+					   )
832
+					   . '</p><p><ul>';
833
+
834
+
835
+				foreach ($error_msg as $error) {
836
+					$msg .= '<li>' . $error . '</li>';
837
+				}
838
+
839
+				$msg .= '</ul></p><p>'
840
+						. sprintf(
841
+							esc_html__(
842
+								'%sPlease note that your date and time formats have been reset to "F j, Y" and "g:i a" respectively.%s',
843
+								'event_espresso'
844
+							),
845
+							'<span style="color:#D54E21;">',
846
+							'</span>'
847
+						)
848
+						. '</p>';
849
+
850
+				// trigger WP settings error
851
+				add_settings_error(
852
+					'date_format',
853
+					'date_format',
854
+					$msg
855
+				);
856
+
857
+				// set format to something valid
858
+				switch ($option) {
859
+					case 'date_format':
860
+						$value = 'F j, Y';
861
+						break;
862
+					case 'time_format':
863
+						$value = 'g:i a';
864
+						break;
865
+				}
866
+			}
867
+		}
868
+		return $value;
869
+	}
870
+
871
+
872
+	/**
873
+	 * its_eSpresso - converts the less commonly used spelling of "Expresso" to "Espresso"
874
+	 *
875
+	 * @param $content
876
+	 * @return    string
877
+	 */
878
+	public function its_eSpresso($content)
879
+	{
880
+		return str_replace('[EXPRESSO_', '[ESPRESSO_', $content);
881
+	}
882
+
883
+
884
+	/**
885
+	 * espresso_admin_footer
886
+	 *
887
+	 * @return    string
888
+	 */
889
+	public function espresso_admin_footer()
890
+	{
891
+		return \EEH_Template::powered_by_event_espresso('aln-cntr', '', array('utm_content' => 'admin_footer'));
892
+	}
893
+
894
+
895
+	/**
896
+	 * static method for registering ee admin page.
897
+	 * This method is deprecated in favor of the new location in EE_Register_Admin_Page::register.
898
+	 *
899
+	 * @since      4.3.0
900
+	 * @deprecated 4.3.0    Use EE_Register_Admin_Page::register() instead
901
+	 * @see        EE_Register_Admin_Page::register()
902
+	 * @param       $page_basename
903
+	 * @param       $page_path
904
+	 * @param array $config
905
+	 * @return void
906
+	 * @throws EE_Error
907
+	 */
908
+	public static function register_ee_admin_page($page_basename, $page_path, $config = array())
909
+	{
910
+		EE_Error::doing_it_wrong(
911
+			__METHOD__,
912
+			sprintf(
913
+				esc_html__(
914
+					'Usage is deprecated.  Use EE_Register_Admin_Page::register() for registering the %s admin page.',
915
+					'event_espresso'
916
+				),
917
+				$page_basename
918
+			),
919
+			'4.3'
920
+		);
921
+		if (class_exists('EE_Register_Admin_Page')) {
922
+			$config['page_path'] = $page_path;
923
+		}
924
+		EE_Register_Admin_Page::register($page_basename, $config);
925
+	}
926
+
927
+
928
+	/**
929
+	 * @deprecated 4.8.41
930
+	 * @param  int      $post_ID
931
+	 * @param  \WP_Post $post
932
+	 * @return void
933
+	 */
934
+	public static function parse_post_content_on_save($post_ID, $post)
935
+	{
936
+		EE_Error::doing_it_wrong(
937
+			__METHOD__,
938
+			esc_html__('Usage is deprecated', 'event_espresso'),
939
+			'4.8.41'
940
+		);
941
+	}
942
+
943
+
944
+	/**
945
+	 * @deprecated 4.8.41
946
+	 * @param  $option
947
+	 * @param  $old_value
948
+	 * @param  $value
949
+	 * @return void
950
+	 */
951
+	public function reset_page_for_posts_on_change($option, $old_value, $value)
952
+	{
953
+		EE_Error::doing_it_wrong(
954
+			__METHOD__,
955
+			esc_html__('Usage is deprecated', 'event_espresso'),
956
+			'4.8.41'
957
+		);
958
+	}
959
+
960
+
961
+	/**
962
+	 * @deprecated 4.9.27
963
+	 * @return void
964
+	 */
965
+	public function get_persistent_admin_notices()
966
+	{
967
+		EE_Error::doing_it_wrong(
968
+			__METHOD__,
969
+			sprintf(
970
+				__('Usage is deprecated. Use "%1$s" instead.', 'event_espresso'),
971
+				'\EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
972
+			),
973
+			'4.9.27'
974
+		);
975
+	}
976
+
977
+
978
+	/**
979
+	 * @deprecated 4.9.27
980
+	 * @throws InvalidInterfaceException
981
+	 * @throws InvalidDataTypeException
982
+	 * @throws DomainException
983
+	 */
984
+	public function dismiss_ee_nag_notice_callback()
985
+	{
986
+		EE_Error::doing_it_wrong(
987
+			__METHOD__,
988
+			sprintf(
989
+				__('Usage is deprecated. Use "%1$s" instead.', 'event_espresso'),
990
+				'\EventEspresso\core\services\notifications\PersistentAdminNoticeManager'
991
+			),
992
+			'4.9.27'
993
+		);
994
+		$this->persistent_admin_notice_manager->dismissNotice();
995
+	}
996
+
997
+
998
+	/**
999
+	 * Callback on load-plugins.php hook for setting up anything hooking into the wp plugins page.
1000
+	 *
1001
+	 * @throws InvalidArgumentException
1002
+	 * @throws InvalidDataTypeException
1003
+	 * @throws InvalidInterfaceException
1004
+	 */
1005
+	public function hookIntoWpPluginsPage()
1006
+	{
1007
+		$this->getLoader()->getShared('EventEspresso\core\domain\services\admin\ExitModal');
1008
+		$this->getLoader()
1009
+					 ->getShared('EventEspresso\core\domain\services\admin\PluginUpsells')
1010
+					 ->decafUpsells();
1011
+	}
1012
+
1013
+
1014
+	/**
1015
+	 * Hooks into the "post states" filter in a wp post type list table.
1016
+	 *
1017
+	 * @param array   $post_states
1018
+	 * @param WP_Post $post
1019
+	 * @return array
1020
+	 * @throws InvalidArgumentException
1021
+	 * @throws InvalidDataTypeException
1022
+	 * @throws InvalidInterfaceException
1023
+	 */
1024
+	public function displayStateForCriticalPages($post_states, $post)
1025
+	{
1026
+		$post_states = (array) $post_states;
1027
+		if (! $post instanceof WP_Post || $post->post_type !== 'page') {
1028
+			return $post_states;
1029
+		}
1030
+		/** @var EE_Core_Config $config */
1031
+		$config = $this->getLoader()->getShared('EE_Config')->core;
1032
+		if (in_array($post->ID, $config->get_critical_pages_array(), true)) {
1033
+			$post_states[] = sprintf(
1034
+				/* Translators: Using company name - Event Espresso Critical Page */
1035
+				esc_html__('%s Critical Page', 'event_espresso'),
1036
+				'Event Espresso'
1037
+			);
1038
+		}
1039
+		return $post_states;
1040
+	}
1041 1041
 }
Please login to merge, or discard this patch.
Spacing   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -43,7 +43,7 @@  discard block
 block discarded – undo
43 43
     public static function instance()
44 44
     {
45 45
         // check if class object is instantiated
46
-        if (! self::$_instance instanceof EE_Admin) {
46
+        if ( ! self::$_instance instanceof EE_Admin) {
47 47
             self::$_instance = new self();
48 48
         }
49 49
         return self::$_instance;
@@ -104,11 +104,11 @@  discard block
 block discarded – undo
104 104
      */
105 105
     private function _define_all_constants()
106 106
     {
107
-        if (! defined('EE_ADMIN_URL')) {
108
-            define('EE_ADMIN_URL', EE_PLUGIN_DIR_URL . 'core/admin/');
109
-            define('EE_ADMIN_PAGES_URL', EE_PLUGIN_DIR_URL . 'admin_pages/');
110
-            define('EE_ADMIN_TEMPLATE', EE_ADMIN . 'templates' . DS);
111
-            define('WP_ADMIN_PATH', ABSPATH . 'wp-admin/');
107
+        if ( ! defined('EE_ADMIN_URL')) {
108
+            define('EE_ADMIN_URL', EE_PLUGIN_DIR_URL.'core/admin/');
109
+            define('EE_ADMIN_PAGES_URL', EE_PLUGIN_DIR_URL.'admin_pages/');
110
+            define('EE_ADMIN_TEMPLATE', EE_ADMIN.'templates'.DS);
111
+            define('WP_ADMIN_PATH', ABSPATH.'wp-admin/');
112 112
             define('WP_AJAX_URL', admin_url('admin-ajax.php'));
113 113
         }
114 114
     }
@@ -126,7 +126,7 @@  discard block
 block discarded – undo
126 126
         // set $main_file in stone
127 127
         static $main_file;
128 128
         // if $main_file is not set yet
129
-        if (! $main_file) {
129
+        if ( ! $main_file) {
130 130
             $main_file = plugin_basename(EVENT_ESPRESSO_MAIN_FILE);
131 131
         }
132 132
         if ($plugin === $main_file) {
@@ -177,9 +177,9 @@  discard block
 block discarded – undo
177 177
     public function hide_admin_pages_except_maintenance_mode($admin_page_folder_names = array())
178 178
     {
179 179
         return array(
180
-            'maintenance' => EE_ADMIN_PAGES . 'maintenance' . DS,
181
-            'about'       => EE_ADMIN_PAGES . 'about' . DS,
182
-            'support'     => EE_ADMIN_PAGES . 'support' . DS,
180
+            'maintenance' => EE_ADMIN_PAGES.'maintenance'.DS,
181
+            'about'       => EE_ADMIN_PAGES.'about'.DS,
182
+            'support'     => EE_ADMIN_PAGES.'support'.DS,
183 183
         );
184 184
     }
185 185
 
@@ -203,7 +203,7 @@  discard block
 block discarded – undo
203 203
             $this->initModelsReady();
204 204
         }
205 205
         // run the admin page factory but ONLY if we are doing an ee admin ajax request
206
-        if (! defined('DOING_AJAX') || EE_ADMIN_AJAX) {
206
+        if ( ! defined('DOING_AJAX') || EE_ADMIN_AJAX) {
207 207
             try {
208 208
                 // this loads the controller for the admin pages which will setup routing etc
209 209
                 EE_Registry::instance()->load_core('Admin_Page_Loader');
@@ -229,7 +229,7 @@  discard block
 block discarded – undo
229 229
      */
230 230
     protected function getLoader()
231 231
     {
232
-        if (! $this->loader instanceof LoaderInterface) {
232
+        if ( ! $this->loader instanceof LoaderInterface) {
233 233
             $this->loader = LoaderFactory::getLoader();
234 234
         }
235 235
         return $this->loader;
@@ -296,13 +296,13 @@  discard block
 block discarded – undo
296 296
                     '</strong>',
297 297
                     '<a href="https://eventespresso.com/2017/08/important-upcoming-changes-dates-times">',
298 298
                     '</a>',
299
-                    '<a href="' . EE_Admin_Page::add_query_args_and_nonce(
299
+                    '<a href="'.EE_Admin_Page::add_query_args_and_nonce(
300 300
                         array(
301 301
                             'page'   => 'espresso_maintenance_settings',
302 302
                             'action' => 'datetime_tools',
303 303
                         ),
304 304
                         admin_url('admin.php')
305
-                    ) . '">'
305
+                    ).'">'
306 306
                 ),
307 307
                 false,
308 308
                 'manage_options',
@@ -348,7 +348,7 @@  discard block
 block discarded – undo
348 348
     public function enable_hidden_ee_nav_menu_metaboxes()
349 349
     {
350 350
         global $wp_meta_boxes, $pagenow;
351
-        if (! is_array($wp_meta_boxes) || $pagenow !== 'nav-menus.php') {
351
+        if ( ! is_array($wp_meta_boxes) || $pagenow !== 'nav-menus.php') {
352 352
             return;
353 353
         }
354 354
         $user = wp_get_current_user();
@@ -377,7 +377,7 @@  discard block
 block discarded – undo
377 377
         if (is_array($hidden_meta_boxes)) {
378 378
             foreach ($hidden_meta_boxes as $key => $meta_box_id) {
379 379
                 if (in_array($meta_box_id, $initial_meta_boxes, true)) {
380
-                    unset($hidden_meta_boxes[ $key ]);
380
+                    unset($hidden_meta_boxes[$key]);
381 381
                 }
382 382
             }
383 383
         }
@@ -417,7 +417,7 @@  discard block
 block discarded – undo
417 417
      */
418 418
     public function modify_edit_post_link($link, $id)
419 419
     {
420
-        if (! $post = get_post($id)) {
420
+        if ( ! $post = get_post($id)) {
421 421
             return $link;
422 422
         }
423 423
         if ($post->post_type === 'espresso_attendees') {
@@ -564,7 +564,7 @@  discard block
 block discarded – undo
564 564
         );
565 565
 
566 566
         foreach ($keys as $key => $value) {
567
-            $menu_item->{$key} = isset($menu_item_values[ $key ]) ? $menu_item_values[ $key ] : $value;
567
+            $menu_item->{$key} = isset($menu_item_values[$key]) ? $menu_item_values[$key] : $value;
568 568
         }
569 569
         return $menu_item;
570 570
     }
@@ -662,10 +662,10 @@  discard block
 block discarded – undo
662 662
 
663 663
         // loop through to remove any critical pages from the array.
664 664
         foreach ($critical_pages as $page_id) {
665
-            $needle = 'value="' . $page_id . '"';
665
+            $needle = 'value="'.$page_id.'"';
666 666
             foreach ($split_output as $key => $haystack) {
667 667
                 if (strpos($haystack, $needle) !== false) {
668
-                    unset($split_output[ $key ]);
668
+                    unset($split_output[$key]);
669 669
                 }
670 670
             }
671 671
         }
@@ -686,7 +686,7 @@  discard block
 block discarded – undo
686 686
         // calls.
687 687
         wp_enqueue_script(
688 688
             'ee-inject-wp',
689
-            EE_ADMIN_URL . 'assets/ee-cpt-wp-injects.js',
689
+            EE_ADMIN_URL.'assets/ee-cpt-wp-injects.js',
690 690
             array('jquery'),
691 691
             EVENT_ESPRESSO_VERSION,
692 692
             true
@@ -694,7 +694,7 @@  discard block
 block discarded – undo
694 694
         // register cookie script for future dependencies
695 695
         wp_register_script(
696 696
             'jquery-cookie',
697
-            EE_THIRD_PARTY_URL . 'joyride/jquery.cookie.js',
697
+            EE_THIRD_PARTY_URL.'joyride/jquery.cookie.js',
698 698
             array('jquery'),
699 699
             '2.1',
700 700
             true
@@ -703,16 +703,16 @@  discard block
 block discarded – undo
703 703
         // via: add_filter('FHEE_load_joyride', '__return_true' );
704 704
         if (apply_filters('FHEE_load_joyride', false)) {
705 705
             // joyride style
706
-            wp_register_style('joyride-css', EE_THIRD_PARTY_URL . 'joyride/joyride-2.1.css', array(), '2.1');
706
+            wp_register_style('joyride-css', EE_THIRD_PARTY_URL.'joyride/joyride-2.1.css', array(), '2.1');
707 707
             wp_register_style(
708 708
                 'ee-joyride-css',
709
-                EE_GLOBAL_ASSETS_URL . 'css/ee-joyride-styles.css',
709
+                EE_GLOBAL_ASSETS_URL.'css/ee-joyride-styles.css',
710 710
                 array('joyride-css'),
711 711
                 EVENT_ESPRESSO_VERSION
712 712
             );
713 713
             wp_register_script(
714 714
                 'joyride-modernizr',
715
-                EE_THIRD_PARTY_URL . 'joyride/modernizr.mq.js',
715
+                EE_THIRD_PARTY_URL.'joyride/modernizr.mq.js',
716 716
                 array(),
717 717
                 '2.1',
718 718
                 true
@@ -720,7 +720,7 @@  discard block
 block discarded – undo
720 720
             // joyride JS
721 721
             wp_register_script(
722 722
                 'jquery-joyride',
723
-                EE_THIRD_PARTY_URL . 'joyride/jquery.joyride-2.1.js',
723
+                EE_THIRD_PARTY_URL.'joyride/jquery.joyride-2.1.js',
724 724
                 array('jquery-cookie', 'joyride-modernizr'),
725 725
                 '2.1',
726 726
                 true
@@ -782,7 +782,7 @@  discard block
 block discarded – undo
782 782
 
783 783
         foreach ($items as $type => $item_properties) {
784 784
             $elements[] = sprintf(
785
-                '<a class="ee-dashboard-link-' . $type . '" href="%s" title="%s">%s</a>',
785
+                '<a class="ee-dashboard-link-'.$type.'" href="%s" title="%s">%s</a>',
786 786
                 $item_properties['url'],
787 787
                 $item_properties['title'],
788 788
                 $item_properties['text']
@@ -807,10 +807,10 @@  discard block
 block discarded – undo
807 807
         // check for date_format or time_format
808 808
         switch ($option) {
809 809
             case 'date_format':
810
-                $date_time_format = $value . ' ' . get_option('time_format');
810
+                $date_time_format = $value.' '.get_option('time_format');
811 811
                 break;
812 812
             case 'time_format':
813
-                $date_time_format = get_option('date_format') . ' ' . $value;
813
+                $date_time_format = get_option('date_format').' '.$value;
814 814
                 break;
815 815
             default:
816 816
                 $date_time_format = false;
@@ -833,7 +833,7 @@  discard block
 block discarded – undo
833 833
 
834 834
 
835 835
                 foreach ($error_msg as $error) {
836
-                    $msg .= '<li>' . $error . '</li>';
836
+                    $msg .= '<li>'.$error.'</li>';
837 837
                 }
838 838
 
839 839
                 $msg .= '</ul></p><p>'
@@ -1024,7 +1024,7 @@  discard block
 block discarded – undo
1024 1024
     public function displayStateForCriticalPages($post_states, $post)
1025 1025
     {
1026 1026
         $post_states = (array) $post_states;
1027
-        if (! $post instanceof WP_Post || $post->post_type !== 'page') {
1027
+        if ( ! $post instanceof WP_Post || $post->post_type !== 'page') {
1028 1028
             return $post_states;
1029 1029
         }
1030 1030
         /** @var EE_Core_Config $config */
Please login to merge, or discard this patch.
espresso.php 1 patch
Indentation   +80 added lines, -80 removed lines patch added patch discarded remove patch
@@ -38,103 +38,103 @@
 block discarded – undo
38 38
  * @since           4.0
39 39
  */
40 40
 if (function_exists('espresso_version')) {
41
-    if (! function_exists('espresso_duplicate_plugin_error')) {
42
-        /**
43
-         *    espresso_duplicate_plugin_error
44
-         *    displays if more than one version of EE is activated at the same time
45
-         */
46
-        function espresso_duplicate_plugin_error()
47
-        {
48
-            ?>
41
+	if (! function_exists('espresso_duplicate_plugin_error')) {
42
+		/**
43
+		 *    espresso_duplicate_plugin_error
44
+		 *    displays if more than one version of EE is activated at the same time
45
+		 */
46
+		function espresso_duplicate_plugin_error()
47
+		{
48
+			?>
49 49
             <div class="error">
50 50
                 <p>
51 51
                     <?php
52
-                    echo esc_html__(
53
-                        'Can not run multiple versions of Event Espresso! One version has been automatically deactivated. Please verify that you have the correct version you want still active.',
54
-                        'event_espresso'
55
-                    ); ?>
52
+					echo esc_html__(
53
+						'Can not run multiple versions of Event Espresso! One version has been automatically deactivated. Please verify that you have the correct version you want still active.',
54
+						'event_espresso'
55
+					); ?>
56 56
                 </p>
57 57
             </div>
58 58
             <?php
59
-            espresso_deactivate_plugin(plugin_basename(__FILE__));
60
-        }
61
-    }
62
-    add_action('admin_notices', 'espresso_duplicate_plugin_error', 1);
59
+			espresso_deactivate_plugin(plugin_basename(__FILE__));
60
+		}
61
+	}
62
+	add_action('admin_notices', 'espresso_duplicate_plugin_error', 1);
63 63
 } else {
64
-    define('EE_MIN_PHP_VER_REQUIRED', '5.4.0');
65
-    if (! version_compare(PHP_VERSION, EE_MIN_PHP_VER_REQUIRED, '>=')) {
66
-        /**
67
-         * espresso_minimum_php_version_error
68
-         *
69
-         * @return void
70
-         */
71
-        function espresso_minimum_php_version_error()
72
-        {
73
-            ?>
64
+	define('EE_MIN_PHP_VER_REQUIRED', '5.4.0');
65
+	if (! version_compare(PHP_VERSION, EE_MIN_PHP_VER_REQUIRED, '>=')) {
66
+		/**
67
+		 * espresso_minimum_php_version_error
68
+		 *
69
+		 * @return void
70
+		 */
71
+		function espresso_minimum_php_version_error()
72
+		{
73
+			?>
74 74
             <div class="error">
75 75
                 <p>
76 76
                     <?php
77
-                    printf(
78
-                        esc_html__(
79
-                            'We\'re sorry, but Event Espresso requires PHP version %1$s or greater in order to operate. You are currently running version %2$s.%3$sIn order to update your version of PHP, you will need to contact your current hosting provider.%3$sFor information on stable PHP versions, please go to %4$s.',
80
-                            'event_espresso'
81
-                        ),
82
-                        EE_MIN_PHP_VER_REQUIRED,
83
-                        PHP_VERSION,
84
-                        '<br/>',
85
-                        '<a href="http://php.net/downloads.php">http://php.net/downloads.php</a>'
86
-                    );
87
-                    ?>
77
+					printf(
78
+						esc_html__(
79
+							'We\'re sorry, but Event Espresso requires PHP version %1$s or greater in order to operate. You are currently running version %2$s.%3$sIn order to update your version of PHP, you will need to contact your current hosting provider.%3$sFor information on stable PHP versions, please go to %4$s.',
80
+							'event_espresso'
81
+						),
82
+						EE_MIN_PHP_VER_REQUIRED,
83
+						PHP_VERSION,
84
+						'<br/>',
85
+						'<a href="http://php.net/downloads.php">http://php.net/downloads.php</a>'
86
+					);
87
+					?>
88 88
                 </p>
89 89
             </div>
90 90
             <?php
91
-            espresso_deactivate_plugin(plugin_basename(__FILE__));
92
-        }
91
+			espresso_deactivate_plugin(plugin_basename(__FILE__));
92
+		}
93 93
 
94
-        add_action('admin_notices', 'espresso_minimum_php_version_error', 1);
95
-    } else {
96
-        define('EVENT_ESPRESSO_MAIN_FILE', __FILE__);
97
-        /**
98
-         * espresso_version
99
-         * Returns the plugin version
100
-         *
101
-         * @return string
102
-         */
103
-        function espresso_version()
104
-        {
105
-            return apply_filters('FHEE__espresso__espresso_version', '4.9.78.rc.016');
106
-        }
94
+		add_action('admin_notices', 'espresso_minimum_php_version_error', 1);
95
+	} else {
96
+		define('EVENT_ESPRESSO_MAIN_FILE', __FILE__);
97
+		/**
98
+		 * espresso_version
99
+		 * Returns the plugin version
100
+		 *
101
+		 * @return string
102
+		 */
103
+		function espresso_version()
104
+		{
105
+			return apply_filters('FHEE__espresso__espresso_version', '4.9.78.rc.016');
106
+		}
107 107
 
108
-        /**
109
-         * espresso_plugin_activation
110
-         * adds a wp-option to indicate that EE has been activated via the WP admin plugins page
111
-         */
112
-        function espresso_plugin_activation()
113
-        {
114
-            update_option('ee_espresso_activation', true);
115
-        }
108
+		/**
109
+		 * espresso_plugin_activation
110
+		 * adds a wp-option to indicate that EE has been activated via the WP admin plugins page
111
+		 */
112
+		function espresso_plugin_activation()
113
+		{
114
+			update_option('ee_espresso_activation', true);
115
+		}
116 116
 
117
-        register_activation_hook(EVENT_ESPRESSO_MAIN_FILE, 'espresso_plugin_activation');
117
+		register_activation_hook(EVENT_ESPRESSO_MAIN_FILE, 'espresso_plugin_activation');
118 118
 
119
-        require_once __DIR__ . '/core/bootstrap_espresso.php';
120
-        bootstrap_espresso();
121
-    }
119
+		require_once __DIR__ . '/core/bootstrap_espresso.php';
120
+		bootstrap_espresso();
121
+	}
122 122
 }
123 123
 if (! function_exists('espresso_deactivate_plugin')) {
124
-    /**
125
-     *    deactivate_plugin
126
-     * usage:  espresso_deactivate_plugin( plugin_basename( __FILE__ ));
127
-     *
128
-     * @access public
129
-     * @param string $plugin_basename - the results of plugin_basename( __FILE__ ) for the plugin's main file
130
-     * @return    void
131
-     */
132
-    function espresso_deactivate_plugin($plugin_basename = '')
133
-    {
134
-        if (! function_exists('deactivate_plugins')) {
135
-            require_once ABSPATH . 'wp-admin/includes/plugin.php';
136
-        }
137
-        unset($_GET['activate'], $_REQUEST['activate']);
138
-        deactivate_plugins($plugin_basename);
139
-    }
124
+	/**
125
+	 *    deactivate_plugin
126
+	 * usage:  espresso_deactivate_plugin( plugin_basename( __FILE__ ));
127
+	 *
128
+	 * @access public
129
+	 * @param string $plugin_basename - the results of plugin_basename( __FILE__ ) for the plugin's main file
130
+	 * @return    void
131
+	 */
132
+	function espresso_deactivate_plugin($plugin_basename = '')
133
+	{
134
+		if (! function_exists('deactivate_plugins')) {
135
+			require_once ABSPATH . 'wp-admin/includes/plugin.php';
136
+		}
137
+		unset($_GET['activate'], $_REQUEST['activate']);
138
+		deactivate_plugins($plugin_basename);
139
+	}
140 140
 }
Please login to merge, or discard this patch.