/**
  * Tests if we have a sufficiently recent version of Events Calendar PRO in place and
  * if the additional field data in the database follows the currently expected pattern.
  *
  * @return bool
  */
 public static function additional_fields_ready()
 {
     $pro = Tribe__Events__Pro__Main::instance();
     // If the custom meta tools object is not available, the active version of PRO is too early
     if (!property_exists($pro, 'custom_meta_tools')) {
         self::$unsupported = self::UNSUPPORTED_EARLY_PRO;
         return false;
     }
     // If updates are required for additional fields we cannot support them until the updates are made
     if ($pro->custom_meta_tools->are_updates_needed()) {
         self::$unsupported = self::UNSUPPORTED_UPDATE_NEEDED;
         return false;
     }
     // Otherwise, things should be good!
     return true;
 }
Example #2
0
 public function initialize_filters()
 {
     static $initialized = false;
     if ($initialized) {
         return;
         // only run once
     }
     $initialized = true;
     new Tribe__Events__Filterbar__Filters__Category(sprintf(__('%s Category', 'tribe-events-filter-view'), tribe_get_event_label_singular()), 'eventcategory');
     new Tribe__Events__Filterbar__Filters__Cost(sprintf(__('Cost (%s)', 'tribe-events-filter-view'), tribe_get_option('defaultCurrencySymbol', '$')), 'cost');
     new Tribe__Events__Filterbar__Filters__Tag(__('Tags', 'tribe-events-filter-view'), 'tags');
     new Tribe__Events__Filterbar__Filters__Venue(tribe_get_venue_label_plural(), 'venues');
     new Tribe__Events__Filterbar__Filters__Organizer(tribe_get_organizer_label_plural(), 'organizers');
     new Tribe__Events__Filterbar__Filters__Day_Of_Week(__('Day', 'tribe-events-filter-view'), 'dayofweek');
     new Tribe__Events__Filterbar__Filters__Time_Of_Day(__('Time', 'tribe-events-filter-view'), 'timeofday');
     Tribe__Events__Filterbar__Additional_Fields__Manager::init();
     do_action('tribe_events_filters_create_filters');
 }