/** * 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; }
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'); }