<?php /** * The Events Calendar. * * Defines all the necessary meta information for the events calendar. * * @link https://wordpress.org/plugins/the-events-calendar/ * @package ActivityPub_Event_Bridge * @since 1.0.0 */ namespace ActivityPub_Event_Bridge\Plugins; // Exit if accessed directly. defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore /** * Interface for a supported event plugin. * * This interface defines which information is necessary for a supported event plugin. * * @since 1.0.0 */ final class The_Events_Calendar extends Event_plugin { /** * Returns the full plugin file. * * @return string */ public static function get_plugin_file(): string { return 'the-events-calendar/the-events-calendar.php'; } /** * Returns the event post type of the plugin. * * @return string */ public static function get_post_type(): string { return class_exists( '\Tribe__Events__Main' ) ? \Tribe__Events__Main::POSTTYPE : 'tribe_event'; } /** * Returns the IDs of the admin pages of the plugin. * * @return array The settings page urls. */ public static function get_settings_pages(): array { if ( class_exists( '\Tribe\Events\Admin\Settings' ) ) { $page = \Tribe\Events\Admin\Settings::$settings_page_id; } else { $page = 'tec-events-settings'; } return array( $page ); } /** * Returns the taxonomy used for the plugin's event categories. * * @return string */ public static function get_event_category_taxonomy(): string { return class_exists( '\Tribe__Events__Main' ) ? \Tribe__Events__Main::TAXONOMY : 'tribe_events_cat'; } }