' . sprintf( __( 'Advanced Dynamic Pricing for WooCommerce requires PHP version %s or later.',
'advanced-dynamic-pricing-for-woocommerce' ), WC_ADP_MIN_PHP_VERSION ) . '
';
} );
$state = false;
} elseif ( ! class_exists( 'WooCommerce' ) ) {
add_action( 'admin_notices', function () {
echo '' . __( 'Advanced Dynamic Pricing for WooCommerce requires active WooCommerce!',
'advanced-dynamic-pricing-for-woocommerce' ) . '
';
} );
$state = false;
} elseif ( version_compare( WC_VERSION, WC_ADP_MIN_WC_VERSION, '<' ) ) {
add_action( 'admin_notices', function () {
echo '' . sprintf( __( 'Advanced Dynamic Pricing for WooCommerce requires WooCommerce version %s or later.',
'advanced-dynamic-pricing-for-woocommerce' ), WC_ADP_MIN_WC_VERSION ) . '
';
} );
$state = false;
}
return $state;
}
public static function load_core() {
//Advanced classes
$extension_file = WC_ADP_PLUGIN_PATH . 'pro_version/loader.php';
if ( file_exists( $extension_file ) ) {
include_once $extension_file;
}
//Contracts
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/contracts/contract-*.php' ) as $filename ) {
include_once $filename;
}
//Traits
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/traits/trait-*.php' ) as $filename ) {
include_once $filename;
}
// Engine
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/engine/class-*.php' ) as $filename ) {
include_once $filename;
}
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/engine/cart/class-*.php' ) as $filename ) {
include_once $filename;
}
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/engine/product/class-*.php' ) as $filename ) {
include_once $filename;
}
do_action( 'wdp_include_core_classes' );
//Limits
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/limits/class-*.php' ) as $filename ) {
include_once $filename;
}
do_action( 'wdp_include_limits' );
//Conditions
include_once WC_ADP_PLUGIN_PATH . 'classes/conditions/abstract-wdp-condition.php';
include_once WC_ADP_PLUGIN_PATH . 'classes/conditions/abstract-wdp-condition-cart-items.php';
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/conditions/class-*.php' ) as $filename ) {
include_once $filename;
}
do_action( 'wdp_include_conditions' );
//Cart adjustments
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/cart_adjustments/class-*.php' ) as $filename ) {
include_once $filename;
}
do_action( 'wdp_include_cart_adjustments' );
//Registries
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/registries/class-*.php' ) as $filename ) {
include_once $filename;
}
//Rules
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/class-*.php' ) as $filename ) {
include_once $filename;
}
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/class-wdp-rule-*.php' ) as $filename ) {
include_once $filename;
}
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/calculators/class-wdp-rule-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/abstract/abstract-class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/product/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/product_categories/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/product_selected_categories/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/sets/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/total_qty_in_cart/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/variation/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/discount_range/qty_based_calculators/all_matched_products/class-*.php' ) as $filename )
include_once $filename;
foreach ( glob( WC_ADP_PLUGIN_PATH . 'classes/rules/exceptions/class-*.php' ) as $filename )
include_once $filename;
include_once WC_ADP_PLUGIN_PATH . 'classes/class-wdp-standalone-cart.php';
}
public static function is_pro_version() {
return defined('WC_ADP_PRO_VERSION_PATH');
}
}