/**
  * Set up the notices for this template
  *
  **/
 public function set_notices()
 {
     parent::set_notices();
     $events_label_singular_lowercase = tribe_get_event_label_singular_lowercase();
     if (!tribe_is_showing_all() && tribe_is_past_event()) {
         Tribe__Notices::set_notice('event-past', sprintf(esc_html__('This %s has passed.', 'the-events-calendar'), $events_label_singular_lowercase));
     }
 }
 /**
  * Returns a tickets unavailable message based on the availability slug of a collection of tickets
  *
  * @since 4.2
  *
  * @param array $tickets Collection of tickets
  *
  * @return string
  */
 public function get_tickets_unavailable_message($tickets)
 {
     $availability_slug = $this->get_availability_slug_by_collection($tickets);
     $message = null;
     $post_type = get_post_type();
     if ('tribe_events' == $post_type && function_exists('tribe_is_past_event') && tribe_is_past_event()) {
         $events_label_singular_lowercase = tribe_get_event_label_singular_lowercase();
         $message = sprintf(esc_html__('Tickets are not available as this %s has passed.', 'event-tickets'), $events_label_singular_lowercase);
     } elseif ('availability-future' === $availability_slug) {
         $message = __('Tickets are not yet available.', 'event-tickets');
     } elseif ('availability-past' === $availability_slug) {
         $message = __('Tickets are no longer available.', 'event-tickets');
     } elseif ('availability-mixed' === $availability_slug) {
         $message = __('There are no tickets available at this time.', 'event-tickets');
     }
     /**
      * Filters the unavailability message for a ticket collection
      *
      * @var string Unavailability message
      * @var array Collection of tickets
      */
     $message = apply_filters('event_tickets_unvailable_message', $message, $tickets);
     return $message;
 }