/**
  * espresso_list_of_event_dates
  * returns a unordered list of dates for an event
  *
  * @param int    $EVT_ID
  * @param string $date_format
  * @param string $time_format
  * @param bool   $echo
  * @param null   $show_expired
  * @param bool   $format
  * @param bool   $add_breaks
  * @param null   $limit
  * @return string
  */
 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)
 {
     $date_format = !empty($date_format) ? $date_format : get_option('date_format');
     $time_format = !empty($time_format) ? $time_format : get_option('time_format');
     $date_format = apply_filters('FHEE__espresso_list_of_event_dates__date_format', $date_format);
     $time_format = apply_filters('FHEE__espresso_list_of_event_dates__time_format', $time_format);
     EE_Registry::instance()->load_helper('Event_View');
     $datetimes = EEH_Event_View::get_all_date_obj($EVT_ID, $show_expired, FALSE, $limit);
     if (!$format) {
         return apply_filters('FHEE__espresso_list_of_event_dates__datetimes', $datetimes);
     }
     //d( $datetimes );
     if (is_array($datetimes) && !empty($datetimes)) {
         global $post;
         $html = $format ? '<ul id="ee-event-datetimes-ul-' . $post->ID . '" class="ee-event-datetimes-ul">' : '';
         foreach ($datetimes as $datetime) {
             if ($datetime instanceof EE_Datetime) {
                 $html .= '<li id="ee-event-datetimes-li-' . $datetime->ID();
                 $html .= '" class="ee-event-datetimes-li ee-event-datetimes-li-' . $datetime->get_active_status() . '">';
                 $datetime_name = $datetime->name();
                 $html .= !empty($datetime_name) ? '<strong>' . $datetime_name . '</strong>' : '';
                 $html .= !empty($datetime_name) && $add_breaks ? '<br />' : '';
                 $html .= '<span class="dashicons dashicons-calendar"></span>' . $datetime->date_range($date_format) . '<br/>';
                 $html .= '<span class="dashicons dashicons-clock"></span>' . $datetime->time_range($time_format);
                 $datetime_description = $datetime->description();
                 $html .= !empty($datetime_description) && $add_breaks ? '<br />' : '';
                 $html .= !empty($datetime_description) ? ' - ' . $datetime_description : '';
                 $html = apply_filters('FHEE__espresso_list_of_event_dates__datetime_html', $html, $datetime);
                 $html .= '</li>';
             }
         }
         $html .= $format ? '</ul>' : '';
     } else {
         $html = $format ? '<p><span class="dashicons dashicons-marker pink-text"></span>' . __('There are no upcoming dates for this event.', 'event_espresso') . '</p><br/>' : '';
     }
     if ($echo) {
         echo $html;
         return '';
     }
     return $html;
 }
 /**
  * 	event_tickets_available
  *
  *  @access 	public
  * @param    int $EVT_ID
  *  @return 	string
  */
 public static function event_tickets_available($EVT_ID = 0)
 {
     $event = EEH_Event_View::get_event($EVT_ID);
     $tickets_available_for_purchase = array();
     if ($event instanceof EE_Event) {
         $datetimes = EEH_Event_View::get_all_date_obj($EVT_ID, FALSE);
         foreach ($datetimes as $datetime) {
             $tickets_available_for_purchase = array_merge($tickets_available_for_purchase, $datetime->ticket_types_available_for_purchase());
         }
     }
     return $tickets_available_for_purchase;
 }
 public function dateTime()
 {
     return EEH_Event_View::get_all_date_obj($this->ID, FALSE, FALSE, 1);
 }