41 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * Class file initializing the custom ActivityPub preview.
 | 
						|
 *
 | 
						|
 * @package Event_Bridge_For_ActivityPub
 | 
						|
 * @license AGPL-3.0-or-later
 | 
						|
 * @since 1.0.0
 | 
						|
 */
 | 
						|
 | 
						|
namespace Event_Bridge_For_ActivityPub;
 | 
						|
 | 
						|
// Exit if accessed directly.
 | 
						|
defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore
 | 
						|
 | 
						|
/**
 | 
						|
 * Class for initializing the custom ActivityPub preview(s).
 | 
						|
 */
 | 
						|
class Preview {
 | 
						|
	/**
 | 
						|
	 * Init functions to hook into the ActivityPub plugin.
 | 
						|
	 */
 | 
						|
	public static function init() {
 | 
						|
		\add_filter( 'activitypub_preview_template', array( self::class, 'maybe_apply_event_preview_template' ), 10, 0 );
 | 
						|
	}
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Maybe apply a custom preview template if the post type is an event post type of a supported event plugin.
 | 
						|
	 *
 | 
						|
	 * @return string The full path for the ActivityPub preview template to use.
 | 
						|
	 */
 | 
						|
	public static function maybe_apply_event_preview_template() {
 | 
						|
		$event_post_types = Setup::get_instance()->get_active_event_plugins_post_types();
 | 
						|
 | 
						|
		if ( in_array( \get_post_type(), $event_post_types, true ) ) {
 | 
						|
			return EVENT_BRIDGE_FOR_ACTIVITYPUB_PLUGIN_DIR . '/templates/event-preview.php';
 | 
						|
		}
 | 
						|
 | 
						|
		return ACTIVITYPUB_PLUGIN_DIR . '/templates/post-preview.php';
 | 
						|
	}
 | 
						|
}
 |