SILENT KILLERPanel

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 ]

Files and Folders in: /home/codekrsu//escapematrixonline.com/wp-content/plugins///optinmonster/OMAPI

NameTypeSizeLast ModifiedActions
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.

Reading File: /home/codekrsu//escapematrixonline.com/wp-content/plugins///optinmonster/OMAPI/AssetLoader.php

<?php
/**
 * Asset Loader class.
 *
 * @since 2.0.0
 *
 * @package OMAPI
 * @author  Justin Sternberg
 */

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

/**
 * A special asset loader built specifically to enqueue
 * JS and CSS built by create-react-app
 *
 * @author Justin Sternberg <jsternberg@awesomemotive.com>
 */
class OMAPI_AssetLoader {

	/**
	 * The directory in which the assets can be found
	 *
	 * @since 2.0.0
	 *
	 * @var string
	 */
	protected $directory;

	/**
	 * The asset file to load.
	 *
	 * @since 2.0.0
	 *
	 * @var string
	 */
	protected $manifestFile = 'manifest.json';

	/**
	 * The array of script handles.
	 *
	 * @since 2.0.0
	 *
	 * @var array
	 */
	public $handles = array(
		'js'  => array(),
		'css' => array(),
	);

	/**
	 * The class constructor.
	 *
	 * @since 2.0.0
	 *
	 * @param string $directory    The base directory to use.
	 * @param string $manifestFile The manifest file to use.
	 */
	public function __construct( $directory, $manifestFile = 'manifest.json' ) {
		$this->directory    = $directory;
		$this->manifestFile = $manifestFile;
	}

	/**
	 * Uses the built-in WP asset enqueuing to add the manifest assets.
	 *
	 * @since 2.0.0
	 *
	 * @param array $options Enqueue options.
	 * @return void
	 * @throws Exception If webpack assets not found.
	 */
	public function enqueue( array $options = array() ) {

		$defaults = array(
			'base_path' => $this->directory,
			'base_url'  => $this->directory,
			'version'   => time(),
		);

		$options = wp_parse_args( $options, $defaults );
		$assets  = $this->getAssetsList( $options['base_path'] );

		if ( empty( $assets ) ) {
			throw new \Exception( 'No webpack assets found.' );
		}

		foreach ( $assets as $assetPath ) {
			$isJs  = preg_match( '/\.js$/', $assetPath );
			$isCss = ! $isJs && preg_match( '/\.css$/', $assetPath );

			// Ignore source maps and images.
			if ( ! $isCss && ! $isJs ) {
				continue;
			}

			$handle = basename( $assetPath );
			$handle = 0 !== strpos( $handle, 'wp-om-' ) ? 'wp-om-' . $handle : $handle;
			$uri    = $this->getAssetUri( trim( $assetPath, '/' ), $options['base_url'] );

			if ( $isJs || $isCss ) {

				$should_enqueue = apply_filters( 'optin_monster_should_enqueue_asset', true, $handle, $uri, $isJs, $this );

				if ( ! $should_enqueue ) {
					continue;
				}

				if ( $isJs ) {
					$this->handles['js'][] = $handle;
					wp_enqueue_script( $handle, $uri, array(), $options['version'], true );
				} else {
					$this->handles['css'][] = $handle;
					wp_enqueue_style( $handle, $uri, array(), $options['version'] );
				}
			}
		}
	}

	/**
	 * Localize data for the enqueued script(s).
	 *
	 * @since  2.0.0
	 *
	 * @param  array $args Array of data to send to JS.
	 *
	 * @return OMAPI_AssetLoader
	 */
	public function localize( $args ) {
		foreach ( $this->handles['js'] as $handle ) {
			OMAPI_Utils::add_inline_script( $handle, 'omWpApi', $args );

			if ( isset( $args['omStaticDataKey'] ) ) {
				OMAPI_Utils::add_inline_script( $handle, 'omStaticDataKey', $args['omStaticDataKey'] );
			}
			// We only need to output once.
			break;
		}

		return $this;
	}

	/**
	 * Attempts to load the asset manifest.
	 *
	 * @since 2.0.0
	 *
	 * @param string $assetPath The asset path.
	 * @return null|Array
	 */
	protected function loadAssetFile( $assetPath ) {
		static $resources = array();

		if ( isset( $resources[ $assetPath ] ) ) {
			return $resources[ $assetPath ];
		}

		$url      = filter_var( $assetPath, FILTER_VALIDATE_URL );
		$contents = '';

		if ( $url ) {
			$results  = wp_remote_get(
				$assetPath,
				array(
					'sslverify' => false,
				)
			);
			$contents = wp_remote_retrieve_body( $results );
		} elseif ( file_exists( $assetPath ) ) {
			ob_start();
			include_once $assetPath;
			$contents = ob_get_clean();
		}

		if ( empty( $contents ) ) {
			return null;
		}

		$resources[ $assetPath ] = json_decode( $contents, true );

		return $resources[ $assetPath ];
	}

	/**
	 * Finds the asset manifest in the given directory.
	 *
	 * @since 2.0.0
	 *
	 * @param  string $directory The directory to append to the manifest file.
	 * @return array              The assets themselves or an array of parsed assets.
	 */
	public function getAssetsList( $directory ) {
		$directory = trailingslashit( $directory );

		$assets = $this->loadAssetFile( $directory . $this->manifestFile );

		return ! empty( $assets ) ? array_values( $assets ) : array();
	}

	/**
	 * Infer a base web URL for a file system path.
	 *
	 * @since 2.0.0
	 *
	 * @param string $path Filesystem path for which to return a URL.
	 * @return string|null
	 */
	protected function inferBaseUrl( $path ) {

		if ( strpos( $path, get_stylesheet_directory() ) === 0 ) {
			return get_theme_file_uri( substr( $path, strlen( get_stylesheet_directory() ) ) );
		}
		if ( strpos( $path, get_template_directory() ) === 0 ) {
			return get_theme_file_uri( substr( $path, strlen( get_template_directory() ) ) );
		}
		// Any path not known to exist within a theme is treated as a plugin path.
		$pluginPath = plugin_dir_path( __FILE__ );
		if ( strpos( $path, $pluginPath ) === 0 ) {
			return plugin_dir_url( __FILE__ ) . substr( $path, strlen( $pluginPath ) );
		}
		return '';

	}

	/**
	 * Return web URIs or convert relative filesystem paths to absolute paths.
	 *
	 * @since 2.0.0
	 *
	 * @param string $assetPath A relative filesystem path or full resource URI.
	 * @param string $baseUrl   A base URL to prepend to relative bundle URIs.
	 * @return string
	 */
	public function getAssetUri( $assetPath, $baseUrl ) {

		if ( strpos( $assetPath, '://' ) !== false ) {
			return $assetPath;
		}

		return trailingslashit( $baseUrl ) . $assetPath;
	}
}

SILENT KILLER Tool