Single_Events
Class Single_Events
Source #
File: src/Tribe/Views/V2/iCalendar/Single_Events.php
class Single_Events { /** * Stores the template class used. * * @since 5.16.0 * * @var Template */ protected $template; /** * iCalendar_Handler Modification constructor. * * @since 5.16.0 * * @param Template $template An instance of the plugin template handler. */ public function __construct( Template $template ) { $this->get_template( $template ); } /** * Gets the template instance used to render single events iCalendar templates. * * @since 5.16.0 * * @param Template $template An instance of the plugin template handler. * * @return Template An instance of the plugin template handler. */ public function get_template( $template ) { if ( empty( $this->template ) ) { $this->template = $template; } return $this->template; } /** * Replace (overwrite) the default single event links with subscription links. * * @see `tribe_events_ical_single_event_links` filter. * * @since 5.16.0 * * @param string $calendar_links The link content. * * @return string The altered link content. */ public function single_event_links( $calendar_links, $subscribe_links ) { // Clear links. $calendar_links = ''; /** * Allows each link type to add itself to the links on the Event Single views. * * @since 5.12.0 * @deprecated 5.16.0 - Single events use the Subscribe Dropdown. * * @param array<string|string> $subscribe_links The array of link objects. * @param View|null $view The current View implementation. */ apply_filters_deprecated( 'tec_views_v2_single_subscribe_links', [ [], null ], '5.16.0', '', 'Single event subscribe links use the subscribe dropdown, there is no replacement for this filter.' ); if ( 1 === count( $subscribe_links ) ) { // If we only have one link in the list, show a "button". $item = array_shift( $subscribe_links ); $calendar_links .= $this->template->template( 'components/subscribe-links/single', [ 'item' => $item ], false ); } else { // If we have multiple links in the list, show a "dropdown". $calendar_links .= $this->template->template( 'components/subscribe-links/single-event-list', [ 'items' => $subscribe_links ], false ); } return $calendar_links; } }
Changelog #
Version | Description |
---|---|
5.16.0 | Introduced. |
Methods #
- __construct — iCalendar_Handler Modification constructor.
- get_template — Gets the template instance used to render single events iCalendar templates.
- single_event_links — Replace (overwrite) the default single event links with subscription links.