Tribe__Dependency::get_pue_from_class( string $class )

Gets the Tribe__PUE__Checker instance of a given plugin based on the class.


Parameters

$class

(string) (Required) Which plugin main class we are looking for.


Top ↑

Return

(Tribe__PUE__Checker)


Top ↑

Source

File: src/Tribe/Dependency.php

		public function get_pue_from_class( $class ) {
			if ( ! is_string( $class ) ) {
				return false;
			}

			// If class doesnt exist the plugin doesnt exist.
			if ( ! class_exists( $class ) ) {
				return false;
			}

			/**
			 * These callbacks are only required to prevent fatals.
			 * Only happen for plugin that use PUE.
			 */
			$callback_map = [
				'Tribe__Events__Pro__Main' => function() {
					$pue_reflection = new ReflectionClass( Tribe__Events__Pro__PUE::class );
					$values = $pue_reflection->getStaticProperties();
					$values['plugin_file'] = EVENTS_CALENDAR_PRO_FILE;
					return $values;
				},
				'Tribe__Events__Filterbar__View' => function() {
					$pue_reflection = new ReflectionClass( Tribe__Events__Filterbar__PUE::class );
					$values = $pue_reflection->getStaticProperties();
					$values['plugin_file'] = TRIBE_EVENTS_FILTERBAR_FILE;
					return $values;
				},
				'Tribe__Events__Tickets__Eventbrite__Main' => function() {
					$pue_reflection = new ReflectionClass( Tribe__Events__Tickets__Eventbrite__PUE::class );
					$values = $pue_reflection->getStaticProperties();
					$values['plugin_file'] = EVENTBRITE_PLUGIN_FILE;
					return $values;
				},
			];

			// Bail when class is not mapped.
			if ( ! isset( $callback_map[ $class ] ) ) {
				return false;
			}

			// Use the callback to get the returns without fatals
			$values = $callback_map[ $class ]();
			$pue_instance = new Tribe__PUE__Checker( $values['update_url'], $values['pue_slug'], [], plugin_basename( $values['plugin_file'] ) );

			return $pue_instance;
		}

Top ↑

Changelog

Changelog
Version Description
4.9.12 Introduced.