wordpress-event-bridge-for-.../includes/integrations/class-events-manager.php
André Menrath 77d72a324c
Some checks failed
PHP Code Checker / PHP Code Checker (pull_request) Successful in 52s
PHPUnit / PHPUnit – PHP 7.4 (pull_request) Failing after 59s
PHPUnit / PHPUnit – PHP 8.0 (pull_request) Failing after 1m1s
PHPUnit / PHPUnit – PHP 8.1 (pull_request) Failing after 1m0s
PHPUnit / PHPUnit – PHP 8.2 (pull_request) Failing after 57s
PHPUnit / PHPUnit – PHP 8.3 (pull_request) Failing after 1m3s
PHPUnit / PHPUnit – PHP 8.4 (pull_request) Failing after 53s
cleanup and enhencement of documentation
2024-12-16 17:06:57 +01:00

74 lines
1.9 KiB
PHP

<?php
/**
* Events Manager.
*
* Defines all the necessary meta information and methods for the integration of the
* WordPress plugin "Events Manager".
*
* @link https://wordpress.org/plugins/events-manager/
* @package Event_Bridge_For_ActivityPub
* @since 1.0.0
*/
namespace Event_Bridge_For_ActivityPub\Integrations;
use Event_Bridge_For_ActivityPub\ActivityPub\Transformer\Events_Manager as Events_Manager_Transformer;
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore
/**
* Events Manager.
*
* Defines all the necessary meta information and methods for the integration of the
* WordPress plugin "Events Manager".
*
* @since 1.0.0
*/
final class Events_Manager extends Event_Plugin_Integration {
/**
* Returns the full plugin file.
*
* @return string
*/
public static function get_relative_plugin_file(): string {
return 'events-manager/events-manager.php';
}
/**
* Returns the event post type of the plugin.
*
* @return string
*/
public static function get_post_type(): string {
return defined( 'EM_POST_TYPE_EVENT' ) ? constant( 'EM_POST_TYPE_EVENT' ) : 'event';
}
/**
* Returns the IDs of the admin pages of the plugin.
*
* @return array The settings page urls.
*/
public static function get_settings_page(): array {
return array();
}
/**
* Returns the taxonomy used for the plugin's event categories.
*
* @return string
*/
public static function get_event_category_taxonomy(): string {
return defined( 'EM_TAXONOMY_CATEGORY' ) ? constant( 'EM_TAXONOMY_CATEGORY' ) : 'event-categories';
}
/**
* Returns the ActivityPub transformer for a Events_Manager event post.
*
* @param WP_Post $post The WordPress post object of the Event.
* @return Events_Manager_Transformer
*/
public static function get_activitypub_event_transformer( $post ): Events_Manager_Transformer {
return new Events_Manager_Transformer( $post, self::get_event_category_taxonomy() );
}
}