MOON
Server: Apache
System: Linux server.royaltuning.hu 4.18.0-425.13.1.el8_7.x86_64 #1 SMP Tue Feb 21 04:20:52 EST 2023 x86_64
User: royaltuning (1001)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/royaltuning/public_html/public/wp-content/plugins/easysales/easysales.php
<?php

/**
 * Plugin Name: easySales
 * Plugin URI: https://easysales.ro
 * Description: Connector for easySales platform
 * Version: 1.1.89
 * Author: easySales
 * Author URI: https://easysales.ro/
 * Developer: Valentin Sirbu
 * Developer URI: https://easy-sales.com/
 *
 * WC requires at least: 3.0.0
 * WC tested up to: 8.2.0
 *
 * @author easySales
 * @copyright Copyright (c) SMARTIT GLOBAL S.R.L
 */

/** Exit if accessed directly **/

if ( !defined( 'ABSPATH' ) ) exit;

/**
 * Check if WooCommerce is activated for MultiSite
 */
if ( ! function_exists( 'es_is_woocommerce_activated' ) ) {
	function es_is_woocommerce_activated() {
		if ( class_exists( 'woocommerce' ) ) { return true; } else { return false; }
	}
}

/**
 * Check if WooCommerce is activated for MultiSite - Version 2
 */
if ( ! function_exists( 'es_is_woocommerce_activated_v2' ) ) {
    function es_is_woocommerce_activated_v2() {
        $active_plugins = ( is_multisite() ) ?
            array_keys( get_site_option( 'active_sitewide_plugins', array() ) ) :
            apply_filters( 'active_plugins', get_option( 'active_plugins', array() ) );

        foreach ( $active_plugins as $active_plugin ) {
            $active_plugin = explode( '/', $active_plugin );
            if ( isset( $active_plugin[1] ) && 'woocommerce.php' === $active_plugin[1] ) {
                return true;
            }
        }

        return false;
    }
}

// Declare compatibility with WooCommerce High Performance Order Storage (HPOS)
add_action( 'before_woocommerce_init', function() {
    if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
    }
});

/**
 * Check if WooCommerce is active
 **/

if ( es_check_woocommerce() ) {

    /**
     * Define Constants
     **/

    define( 'EASYSALES_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
    define( 'EASYSALES_PLUGIN_URL', plugin_dir_url( __FILE__ ) );

    define( 'EASYSALES_PLUGIN_VERSION', '1.1.89' );

    define( 'EASYSALES_API_URL', 'https://woocommerce3-microservice.easysales.ro/api/v1/website');

    /**
     * Plugin Class
     **/

    require_once EASYSALES_PLUGIN_DIR . 'includes/EasySales.php';

    /**
     * Api Controller
     **/

    require_once EASYSALES_PLUGIN_DIR . 'includes/ApiController.php';

    /**
     * Transformers
     **/

    require_once EASYSALES_PLUGIN_DIR . 'includes/Transformers/ProductTransformer.php';
    require_once EASYSALES_PLUGIN_DIR . 'includes/Transformers/OrderTransformer.php';

    /**
     * Models
     **/

    require_once EASYSALES_PLUGIN_DIR . 'includes/Models/ProductModel.php';
    require_once EASYSALES_PLUGIN_DIR . 'includes/Models/OrderModel.php';

    /**
     * Request Class| wp_remote_post wrapper
     **/

    require_once EASYSALES_PLUGIN_DIR . 'includes/Request.php';

    /**
     * Init Transformers
     **/

    $product_transformer = new ProductTransformer();
    $order_transformer = new OrderTransformer();

    /**
     * Create controller instance
     * @var ApiController $apiController
     */

    $apiController = new ApiController($product_transformer, $order_transformer);

    /**
     * Create plugin instance
     * @var EasySales $pluginInstance
     */

    $pluginInstance = new EasySales($apiController, $product_transformer, $order_transformer);
}

/**
 * Check if woocommerce exists in either multisite setup or normal setup
 */
function es_check_woocommerce() {
    if (is_multisite()) {
        $isActive = es_is_woocommerce_activated();

        if(!$isActive){
            $isActive = es_is_woocommerce_activated_v2();
        }

        /** Check also if woocommerce is activated on existing site **/
        if(!$isActive){
            $isActive = in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) );
        }

        return $isActive;
    } else {
        return in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) );
    }
}