wordpress-event-bridge-for-.../includes/integrations/class-modern-events-calendar-lite.php
André Menrath 5712706457
All checks were successful
PHP Code Checker / PHP Code Checker (pull_request) Successful in 50s
PHPUnit / PHPUnit – PHP 7.4 (pull_request) Successful in 1m4s
PHPUnit / PHPUnit – PHP 8.0 (pull_request) Successful in 1m2s
PHPUnit / PHPUnit – PHP 8.1 (pull_request) Successful in 1m2s
PHPUnit / PHPUnit – PHP 8.2 (pull_request) Successful in 1m7s
PHPUnit / PHPUnit – PHP 8.3 (pull_request) Successful in 1m6s
PHPUnit / PHPUnit – PHP 8.4 (pull_request) Successful in 1m5s
refactoring
2024-12-15 22:25:28 +01:00

73 lines
2 KiB
PHP

<?php
/**
* Modern Events Calendar (Lite)
*
* Defines all the necessary meta information for the Modern Events Calendar (Lite).
*
* @link https://webnus.net/modern-events-calendar/
* @package Event_Bridge_For_ActivityPub
* @since 1.0.0
*/
namespace Event_Bridge_For_ActivityPub\Integrations;
use Event_Bridge_For_ActivityPub\ActivityPub\Transformer\Modern_Events_Calendar_Lite as Modern_Events_Calendar_Lite_Transformer;
// 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 Modern_Events_Calendar_Lite extends Event_Plugin_Integration {
/**
* Returns the full plugin file.
*
* @return string
*/
public static function get_relative_plugin_file(): string {
return 'modern-events-calendar-lite/modern-events-calendar-lite.php';
}
/**
* Returns the event post type of the plugin.
*
* @return string
*/
public static function get_post_type(): string {
// See MEC_feature_events->get_main_post_type().
return 'mec-events';
}
/**
* Returns the IDs of the admin pages of the plugin.
*
* @return array The settings page urls.
*/
public static function get_settings_pages(): array {
return array( 'MEC-settings', 'MEC-support', 'MEC-ix', 'MEC-wizard', 'MEC-addons', 'mec-intro' );
}
/**
* Returns the taxonomy used for the plugin's event categories.
*
* @return string
*/
public static function get_event_category_taxonomy(): string {
return 'mec_category';
}
/**
* Returns the ActivityPub transformer for a Modern_Events_Calendar_Lite event post.
*
* @param WP_Post $post The WordPress post object of the Event.
* @return Modern_Events_Calendar_Lite_Transformer
*/
public static function get_activitypub_event_transformer( $post ): Modern_Events_Calendar_Lite_Transformer {
return new Modern_Events_Calendar_Lite_Transformer( $post, self::get_event_category_taxonomy() );
}
}