Current Path: > home > codekrsu > > escapematrixonline.com > wp-content > plugins > > optinmonster > OMAPI
Operation : Linux premium131.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 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
EasyDigitalDownloads | Directory | - | - | |
Elementor | Directory | - | - | |
Integrations | Directory | - | - | |
MemberPress | Directory | - | - | |
Plugins | Directory | - | - | |
Promos | Directory | - | - | |
Rules | Directory | - | - | |
Shortcodes | Directory | - | - | |
WPForms | Directory | - | - | |
WooCommerce | Directory | - | - | |
Actions.php | File | 7126 bytes | February 25 2025 01:06:30. | |
Ajax.php | File | 1494 bytes | November 17 2021 04:02:26. | |
Api.php | File | 14508 bytes | February 25 2025 01:06:30. | |
ApiAuth.php | File | 2463 bytes | October 07 2021 23:34:50. | |
ApiKey.php | File | 5205 bytes | July 01 2024 22:14:00. | |
AssetLoader.php | File | 5721 bytes | April 01 2021 19:57:40. | |
BaseRestApi.php | File | 6807 bytes | October 15 2024 19:52:30. | |
Blocks.php | File | 13118 bytes | March 26 2025 18:07:30. | |
ClassicEditor.php | File | 7085 bytes | July 19 2022 01:42:26. | |
ConstantContact.php | File | 7602 bytes | July 01 2024 22:14:00. | |
Debug.php | File | 4453 bytes | July 01 2024 22:14:00. | |
EasyDigitalDownloads.php | File | 9553 bytes | July 01 2024 22:14:00. | |
Elementor.php | File | 5493 bytes | January 18 2023 22:34:56. | |
Inserter.php | File | 11562 bytes | September 14 2022 06:35:44. | |
InstallSkin.php | File | 1386 bytes | January 20 2021 22:11:00. | |
InstallSkinCompat.php | File | 1395 bytes | January 20 2021 22:11:00. | |
MailPoet.php | File | 13680 bytes | July 01 2024 22:14:00. | |
MemberPress.php | File | 4216 bytes | June 23 2023 01:24:22. | |
Menu.php | File | 15787 bytes | November 27 2024 23:45:46. | |
Notifications.php | File | 18910 bytes | October 15 2024 19:52:30. | |
OmuApi.php | File | 4122 bytes | October 27 2021 22:35:34. | |
Output.php | File | 24860 bytes | September 16 2024 23:28:26. | |
Pages.php | File | 17172 bytes | March 31 2025 18:30:04. | |
Partners.php | File | 4805 bytes | July 01 2024 22:14:00. | |
Plugins.php | File | 24923 bytes | April 23 2024 17:54:30. | |
Promos.php | File | 1132 bytes | September 14 2022 06:35:44. | |
Refresh.php | File | 5891 bytes | March 31 2025 18:30:04. | |
RestApi.php | File | 39506 bytes | October 15 2024 19:52:30. | |
RevenueAttribution.php | File | 3037 bytes | May 17 2022 18:55:22. | |
Review.php | File | 1482 bytes | September 08 2021 19:22:54. | |
Rules.php | File | 24003 bytes | July 01 2024 22:14:00. | |
Save.php | File | 11057 bytes | October 13 2023 01:19:08. | |
Shortcode.php | File | 3668 bytes | November 30 2021 23:04:18. | |
Sites.php | File | 8554 bytes | July 01 2024 22:14:00. | |
Support.php | File | 8446 bytes | February 25 2025 01:06:30. | |
Type.php | File | 2496 bytes | February 11 2023 00:30:54. | |
Urls.php | File | 8996 bytes | November 13 2024 02:13:58. | |
Utils.php | File | 7590 bytes | March 31 2025 18:30:04. | |
Validate.php | File | 9280 bytes | February 22 2024 23:03:38. | |
WPForms.php | File | 2666 bytes | July 27 2023 00:06:52. | |
Welcome.php | File | 4930 bytes | November 17 2021 04:02:26. | |
Widget.php | File | 6652 bytes | November 17 2021 04:02:26. | |
WooCommerce.php | File | 20046 bytes | July 01 2024 22:14:00. | |
Wordfence.php | File | 5606 bytes | October 09 2024 11:38:44. | |
WpErrorException.php | File | 714 bytes | November 17 2020 01:51:02. |
<?php /** * Gutenberg Blocks registration class. * * @since 1.9.10 * * @package OMAPI * @author Thomas Griffin */ // Exit if accessed directly. if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Gutenberg Blocks registration class. * * @since 1.9.10 */ class OMAPI_Blocks { /** * Holds the class object. * * @since 1.9.10 * * @var object */ public static $instance; /** * Path to the file. * * @since 1.9.10 * * @var string */ public $file = __FILE__; /** * Holds the base class object. * * @since 1.9.10 * * @var object */ public $base; /** * The data to be localized for JS. * * @since 2.2.0 * * @var array */ protected $data_for_js = array(); /** * The campaign options list array. * * @var null|array */ protected static $campaigns_list = null; /** * Primary class constructor. * * @since 1.9.10 */ public function __construct() { // Set our object. $this->set(); if ( function_exists( 'register_block_type' ) ) { // Register our blocks. $this->register_blocks(); add_action( 'enqueue_block_editor_assets', array( $this, 'enqueue_block_editor_assets' ) ); // Register the global post campaign switch meta. register_meta( 'post', 'om_disable_all_campaigns', array( 'show_in_rest' => true, 'single' => true, 'type' => 'boolean', ) ); } } /** * Sets our object instance and base class instance. * * @since 1.9.10 */ public function set() { self::$instance = $this; $this->base = OMAPI::get_instance(); } /** * Register OptinMonster Gutenberg blocks on the backend. * * @since 1.9.10 */ public function register_blocks() { $use_blocks_json = version_compare( $GLOBALS['wp_version'], '5.8', '>=' ); $block_type = plugin_dir_path( OMAPI_FILE ) . 'assets/js/'; $args = array( 'render_callback' => array( $this, 'get_output' ), ); if ( ! $use_blocks_json ) { $block_type = 'optinmonster/campaign-selector'; $args['attributes'] = array( 'slug' => array( 'type' => 'string', ), 'followrules' => array( 'type' => 'boolean', ), ); } register_block_type( $block_type, $args ); } /** * Load OptinMonster Gutenberg block scripts. * * @since 1.9.10 */ public function enqueue_block_editor_assets() { global $pagenow; $version = $this->base->asset_version(); $css_handle = $this->base->plugin_slug . '-blocks-admin'; wp_enqueue_style( $css_handle, $this->base->url . 'assets/dist/css/blocks-admin.min.css', array(), $version ); if ( function_exists( 'wp_add_inline_style' ) ) { $data = get_post_type() ? get_post_type_object( get_post_type() ) : array(); $css = $this->base->get_min_css_view_contents( 'disable-warning-css.php', (object) $data ); wp_add_inline_style( $css_handle, $css ); } $campaign_selector_handle = $this->base->plugin_slug . '-gutenberg-campaign-selector'; wp_enqueue_script( $campaign_selector_handle, $this->base->url . 'assets/dist/js/campaign-selector.min.js', array( 'wp-blocks', 'wp-i18n', 'wp-element' ), $version, true ); OMAPI_Utils::add_inline_script( $campaign_selector_handle, 'OMAPI', $this->get_data_for_js() ); $is_widgets_page = 'widgets.php' === $pagenow; // Prevent enqueueing sidebar settings on widgets screen... if ( ! $is_widgets_page && ! is_customize_preview() ) { wp_enqueue_script( $this->base->plugin_slug . '-gutenberg-sidebar-settings', $this->base->url . 'assets/dist/js/om-settings.min.js', array( $campaign_selector_handle, 'wp-plugins', 'wp-edit-post', 'wp-element' ), $version ); } if ( version_compare( $GLOBALS['wp_version'], '5.3', '>=' ) ) { wp_enqueue_script( $this->base->plugin_slug . '-gutenberg-format-button', $this->base->url . 'assets/dist/js/om-format.min.js', array( $campaign_selector_handle, 'wp-rich-text', 'wp-element', $is_widgets_page && version_compare( $GLOBALS['wp_version'], '5.8.0', '>=' ) ? 'wp-edit-widgets' : 'wp-editor', ), $version ); } } /** * Get OptinMonster data for Gutenberg JS. * * @since 2.2.0 * * @param string $key The js data to get, by key. * * @return array Array of data for JS. */ public function get_data_for_js( $key = null ) { if ( empty( $this->data_for_js ) ) { // For translation of strings. $i18n = array( 'title' => esc_html__( 'OptinMonster', 'optin-monster-api' ), 'description' => esc_html__( 'Select and display one of your OptinMonster inline campaigns.', 'optin-monster-api' ), 'campaign_select' => esc_html__( 'Select Campaign...', 'optin-monster-api' ), 'campaign_select_display' => esc_html__( 'Select and display your email marketing call-to-action campaigns from OptinMonster', 'optin-monster-api' ), 'create_new_popup' => esc_html__( 'Create New Popup Campaign', 'optin-monster-api' ), 'create_new_inline' => esc_html__( 'Create New Inline Campaign', 'optin-monster-api' ), 'block_settings' => esc_html__( 'OptinMonster Block Settings', 'optin-monster-api' ), 'settings' => esc_html__( 'OptinMonster Settings', 'optin-monster-api' ), 'campaign_selected' => esc_html__( 'Campaign', 'optin-monster-api' ), 'followrules_label' => esc_html__( 'Use Output Settings', 'optin-monster-api' ), /* translators: %s - Output Settings (linked).*/ 'followrules_help' => esc_html__( 'Ensure this campaign follows any conditions you\'ve selected in its %s', 'optin-monster-api' ), 'output_settings' => esc_html__( 'Output Settings', 'optin-monster-api' ), 'no_sites' => esc_html__( 'Please create a free account or connect an existing account to use an OptinMonster block.', 'optin-monster-api' ), 'no_sites_button_create_account' => esc_html__( 'Create a Free Account', 'optin-monster-api' ), 'no_sites_button_connect_account' => esc_html__( 'Connect an Existing Account', 'optin-monster-api' ), 'no_inline_campaigns' => esc_html__( 'You don’t have any inline campaigns yet!', 'optin-monster-api' ), 'no_campaigns_help' => esc_html__( 'Create an inline campaign to display in your posts and pages.', 'optin-monster-api' ), 'create_inline_campaign' => esc_html__( 'Create Your First Inline Campaign', 'optin-monster-api' ), 'create_popup_campaign' => esc_html__( 'Create Your First Popup', 'optin-monster-api' ), 'no_campaigns_button_help' => esc_html__( 'Learn how to create your first campaign', 'optin-monster-api' ), 'found_error' => esc_html__( 'An error was encountered', 'optin-monster-api' ), 'disable_all' => esc_html__( 'Disable all OptinMonster campaigns.', 'optin-monster-api' ), 'view_all' => esc_html__( 'View All Campaigns', 'optin-monster-api' ), 'not_connected' => esc_html__( 'You Have Not Connected with OptinMonster', 'optin-monster-api' ), 'no_campaigns_yet' => esc_html__( 'You don’t have any campaigns created yet.', 'optin-monster-api' ), 'update_selected_popup' => esc_html__( 'Update Selected OptinMonster Campaign', 'optin-monster-api' ), 'open_popup' => esc_html__( 'Open an OptinMonster Popup', 'optin-monster-api' ), 'remove_popup' => esc_html__( 'Remove Campaign Link', 'optin-monster-api' ), 'upgrade_monsterlink' => esc_html__( 'Unlock access to the OptinMonster click-to-load feature called MonsterLinks by upgrading your subscription.', 'optin-monster-api' ), 'upgrade' => esc_html__( 'Upgrade Now', 'optin-monster-api' ), ); $i18n['description'] = html_entity_decode( $i18n['description'], ENT_COMPAT, 'UTF-8' ); $campaigns = $this->get_campaign_options(); $site_ids = $this->base->get_site_ids(); $post = get_post(); $this->data_for_js = array( 'logoUrl' => $this->base->url . 'assets/css/images/icons/archie-icon.svg', 'i18n' => $i18n, 'campaigns' => array( 'inline' => ! empty( $campaigns['inline'] ) ? $campaigns['inline'] : array(), 'other' => ! empty( $campaigns['other'] ) ? $campaigns['other'] : array(), ), 'site_ids' => ! empty( $site_ids ) ? $site_ids : array(), 'post' => $post, 'omEnv' => defined( 'OPTINMONSTER_ENV' ) ? OPTINMONSTER_ENV : '', 'canMonsterlink' => $this->base->has_rule_type( 'monster-link' ), 'templatesUri' => OMAPI_Urls::templates(), 'playbooksUri' => OMAPI_Urls::playbooks(), 'campaignsUri' => OMAPI_Urls::campaigns(), 'settingsUri' => OMAPI_Urls::settings(), 'wizardUri' => OMAPI_Urls::wizard(), 'upgradeUri' => OMAPI_Urls::upgrade( 'gutenberg', '--FEATURE--' ), 'apiUrl' => esc_url_raw( OPTINMONSTER_APIJS_URL ), 'omUserId' => $this->base->get_option( 'accountUserId' ), 'outputSettingsUrl' => OMAPI_Urls::campaign_output_settings( '%s' ), 'editUrl' => OMAPI_Urls::om_app( 'campaigns/--CAMPAIGN_SLUG--/edit/', rawurlencode( OMAPI_Urls::campaign_output_settings( '--CAMPAIGN_SLUG--' ) ) ), 'monsterlink' => esc_url_raw( OPTINMONSTER_SHAREABLE_LINK ) . '/c/', 'wpVersion' => $GLOBALS['wp_version'], 'customFieldsSupported' => post_type_supports( get_post_type( $post ), 'custom-fields' ), 'pluginUrl' => esc_url_raw( plugin_dir_url( dirname( __FILE__ ) ) ), ); } if ( $key ) { return isset( $this->data_for_js[ $key ] ) ? $this->data_for_js[ $key ] : null; } return $this->data_for_js; } /** * Does the user have any associated OM sites registered? * * @since 2.2.0 * * @return boolean */ public function has_sites() { $site_ids = $this->base->get_site_ids(); return ! empty( $site_ids ); } /** * Get campaign options. * * @since 2.2.0 * * @param boolean $titles_only Whether to include titles only, or separate data as array. * * @return array Array of campaign options. */ public function get_campaign_options( $titles_only = false ) { if ( null === self::$campaigns_list ) { $campaigns_list = array( 'inline' => array(), 'other' => array(), ); if ( $this->has_sites() ) { $campaigns = $this->base->get_campaigns(); if ( ! empty( $campaigns ) ) { foreach ( $campaigns as $campaign ) { $title = mb_strlen( $campaign->post_title, 'UTF-8' ) > 100 ? mb_substr( $campaign->post_title, 0, 97, 'UTF-8' ) . '...' : $campaign->post_title; $title .= ' (' . $campaign->post_name . ')'; $type = 'inline' === $campaign->campaign_type ? 'inline' : 'other'; $campaigns_list[ $type ][ $campaign->post_name ] = array( 'title' => $title, 'pending' => empty( $campaign->enabled ), ); } } } self::$campaigns_list = $campaigns_list; } if ( $titles_only && ! empty( self::$campaigns_list ) ) { $list = array(); foreach ( self::$campaigns_list as $type => $type_list ) { foreach ( $type_list as $campaign_name => $args ) { $list[ $type ][ $campaign_name ] = $args['title'] . ( $args['pending'] ? ' [Pending]' : '' ); } } return $list; } return self::$campaigns_list; } /** * Get form HTML to display in a OptinMonster Gutenberg block. * * @param array $atts Attributes passed by OptinMonster Gutenberg block. * * @since 1.9.10 * * @return string */ public function get_output( $atts ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended $context = ! empty( $_REQUEST['context'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['context'] ) ) : ''; $is_rest = defined( 'REST_REQUEST' ) && REST_REQUEST; $is_gutes = $is_rest && 'edit' === $context; // Our Guten-block handles the embed output manually. if ( $is_gutes ) { return; } // Unslash and sanitize the shortcode attributes. $atts = array_map( 'sanitize_text_field', wp_unslash( $atts ) ); // Gutenberg block shortcodes default to following the rules. // See assets/js/campaign-selector.js, attributes.followrules. if ( ! isset( $atts['followrules'] ) ) { $atts['followrules'] = true; } $atts['followrules'] = wp_validate_boolean( $atts['followrules'] ); $output = $this->base->shortcode->shortcode( $atts ); if ( ! empty( $output ) && ! wp_script_is( $this->base->plugin_slug . '-api-script', 'enqueued' ) ) { // Need to enqueue the base api script. $this->base->output->api_script(); } // Just return the shortcode output to the frontend. return $output; } }
SILENT KILLER Tool