<?php
/**
 * Plugin Name:       Product Condition Manager for WooCommerce
 * Plugin URI:        https://demo.hulkplugins.com/product-condition-manager-for-woocommerce
 * Description:       Set default & custom product conditions easily in WooCommerce - New, Used, Like New, and more!
 * Author:            HulkPlugins
 * Author URI:        https://hulkplugins.com
 * License:           GPL v2 or later
 * License URI:       https://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain:       product-condition-manager-for-woocommerce
 * Domain Path:       /languages
 * Version:           1.1.5
 * Requires PHP:      7.4
 * Requires at least: 6.2
 * Requires Plugins:  woocommerce
 *
 * @package         HulkPlugins\Woo\ProductCondition
 */

namespace HulkPlugins\Woo\ProductConditionManager;

use HulkPlugins\Woo\ProductConditionManager\Controllers\DokanController;
use HulkPlugins\Woo\ProductConditionManager\Controllers\FrontendController;
use HulkPlugins\Woo\ProductConditionManager\Controllers\ProductController;
use HulkPlugins\Woo\ProductConditionManager\Controllers\RestController;
use HulkPlugins\Woo\ProductConditionManager\Controllers\SettingsController;
use HulkPlugins\Woo\ProductConditionManager\Controllers\WCFMFrontendManager;

defined( 'ABSPATH' ) || exit;

if ( function_exists( 'HulkPlugins\Woo\ProductConditionManager\hulk_woo_pcm_fs' ) ) {
	hulk_woo_pcm_fs()->set_basename( false, __FILE__ );
} else {
	// Composer autoload
	require_once plugin_dir_path( __FILE__ ) . 'vendor/autoload.php';

	// Freemius
	require_once plugin_dir_path( __FILE__ ) . 'freemius.php';

	// Constants
	require_once plugin_dir_path( __FILE__ ) . 'constants.php';

	// Init
	Base::getInstance()->init_hooks();
	SettingsController::getInstance()->init_hooks();
	ProductController::getInstance()->init_hooks();
	FrontendController::getInstance()->init_hooks();
	RestController::getInstance()->init_hooks();

	// Plugin Name: Dokan - An e-commerce marketplace
	DokanController::getInstance()->init_hooks();

	// Plugin Name: WCFM - WooCommerce Frontend Manager
	WCFMFrontendManager::getInstance()->init_hooks();
}
