<?php
/*
 * Developed By Devozon
 *
 * Check Out at https://devozon.com/
 * Email: support@devozon.com
 * Message: https://www.facebook.com/devozon
 *
 * Please feel free to contact me at any time if you need a custom script or any development work.
 *
 * Devozon Team:
 * Coded by Sanad Nabil
 * Theme by Ahmed Reda
 * Tested By Smith Carter
 *
 * Devozon All rights reserved
 * Copyright (c) 2023-2025.
 * Last Update 22 \ 6 \ 2025
 */

/**
 * The plugin bootstrap file
 *
 * This file is read by WordPress to generate the plugin information in the plugin
 * admin area. This file also includes all of the dependencies used by the plugin,
 * registers the activation and deactivation functions, and defines a function
 * that starts the plugin.
 *
 * @link              https://fense.in/
 * @since             1.1.0
 * @package           FENSE_BPVT
 *
 * @wordpress-plugin
 * Plugin Name:       Fense Block Vpn & Proxy
 * Plugin URI:        https://fense.in/
 * Description:       With Fense You can easily Protect Your ads and Website From Bad Traffic that Leads To Destroy Your Rank and Force Ad Network To Close Your Account.
 * Version:           2.9.0
 * Author:            Devozon
 * Author URI:        https://devozon.com/
 * License:           GPLv2
 * License URI:       http://www.gnu.org/licenses/gpl-2.0.txt
 * Text Domain:       fense-block-vpn-proxy
 * Domain Path:       /languages
 */

// If this file is called directly, abort.
if ( !defined( 'WPINC' ) ) {
	die;
}

const FENSE_BPVT_VERSION = '2.9.0';
const FENSE_BPVT_API_LINK = 'https://api.fense.in/';
const FENSE_BPVT_MAIN_LINK = 'https://fense.in/';
const FENSE_BPVT_PLUGIN_KEY = 'FENSE_BPVT_';

//? Activate plugin
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-activate-plugin.php';

//? Deactivate plugin
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-deactivate-plugin.php';

//? Core
require plugin_dir_path( __FILE__ ) . 'includes/class-fense-bpvt.php';

require plugin_dir_path( __FILE__ ) . 'includes/class-fense-bpvt-admin-inputs.php';

//? Load lang
load_plugin_textdomain(
	'fense-block-vpn-proxy',
	false,
	dirname( dirname( plugin_basename( __FILE__ ) ) ) . '/languages/'
);

//? All plugin Functions
require_once plugin_dir_path( __FILE__ ) . 'includes/core/class-fense-bpvt-functions.php';

//? plugin run Class
require_once plugin_dir_path( __FILE__ ) . 'includes/core/class-fense-bpvt-run.php';
require_once plugin_dir_path( __FILE__ ) . 'includes/core/class-fense-bpvt-run-save-mode.php';

//? plugin Stats Class
require_once plugin_dir_path( __FILE__ ) . 'includes/core/class-fense-bpvt-stats.php';

//? Check ver
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-check-version.php';

//? Check ver
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-load-stats.php';

//? Ad Head Code
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-header-code.php';

//? Get plugin settings
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-plugin-settings.php';

//? Api Call
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-api-call.php';

require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-cache-safe-mode.php';

register_activation_hook( __FILE__, 'FENSE_BPVT_activate' );

//? Get plugin Updates
require_once plugin_dir_path( __FILE__ ) . 'includes/system/fense-bpvt-plugin-updates.php';

//? Run
function FENSE_BPVT_run(): void
{
	$plugin = new FENSE_BPVT();
	$plugin->run();
}

FENSE_BPVT_run();
