?AlkantarClanX12
| Current Path : /home/r/a/n/rankinh/lynkandco/wp-content/plugins/nexteuv-plus/ |
| Current File : /home/r/a/n/rankinh/lynkandco/wp-content/plugins/nexteuv-plus/nexteuv-plus.php |
<?php
/**
* Plugin Name: NextEuv Plus
* Description: Adds additional features for NextEuv Theme.
* Version: 1.0.2
* Author: the WeDesignTech team
* Author URI: https://wedesignthemes.com/
* Text Domain: nexteuv-plus
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
if( !class_exists( 'NextEuvPlus' ) ) {
class NextEuvPlus {
private static $_instance = null;
public static function instance() {
if ( is_null( self::$_instance ) ) {
self::$_instance = new self();
}
return self::$_instance;
}
function __construct() {
/**
* Before Hook
*/
do_action( 'nexteuv_plus_before_plugin_load' );
add_action( 'plugins_loaded', array( $this, 'i18n' ) );
add_filter( 'nexteuv_required_plugins_list', array( $this, 'upadate_required_plugins_list' ) );
$this->define_constants();
$this->load_helper();
$this->load_elementor();
$this->load_customizer();
$this->load_modules();
$this->load_post_types();
add_filter( 'body_class', array( $this, 'add_body_classes' ) );
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_assets' ) );
/**
* After Hook
*/
do_action( 'nexteuv_plus_after_plugin_load' );
}
function upadate_required_plugins_list($plugins_list) {
$required_plugins = array(
array(
'name' => 'Elementor',
'slug' => 'elementor',
'required' => false,
'force_activation' => false,
),
array(
'name' => 'Contact Form 7',
'slug' => 'contact-form-7',
'required' => false,
'force_activation' => false,
)
);
$new_plugins_list = array_merge($plugins_list, $required_plugins);
return $new_plugins_list;
}
function i18n() {
load_plugin_textdomain( 'nexteuv-plus', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
}
function define_constants() {
define( 'NEXTEUV_PLUS_VERSION', '1.0.2' );
define( 'NEXTEUV_PLUS_DIR_PATH', trailingslashit( plugin_dir_path( __FILE__ ) ) );
define( 'NEXTEUV_PLUS_DIR_URL', trailingslashit( plugin_dir_url( __FILE__ ) ) );
define( 'NEXTEUV_CUSTOMISER_VAL', 'nexteuv-customiser-option');
define( 'NEXTEUV_PLUS_REQ_CAPTION', esc_html__( 'Go Pro!', 'nexteuv-plus' ) );
define( 'NEXTEUV_PLUS_REQ_DESC', '<p>' . esc_html__( 'Avtivate NextEuv Pro plugin to avail additional features!', 'nexteuv-plus' ) . '</p>' );
}
function load_helper() {
require_once NEXTEUV_PLUS_DIR_PATH . 'functions.php';
}
function load_customizer() {
require_once NEXTEUV_PLUS_DIR_PATH . 'customizer/customizer.php';
}
function load_elementor() {
require_once NEXTEUV_PLUS_DIR_PATH . 'elementor/index.php';
}
function load_modules() {
/**
* Before Hook
*/
do_action( 'nexteuv_plus_before_load_modules' );
foreach( glob( NEXTEUV_PLUS_DIR_PATH. 'modules/*/index.php' ) as $module ) {
include_once $module;
}
/**
* After Hook
*/
do_action( 'nexteuv_plus_after_load_modules' );
}
function load_post_types() {
require_once NEXTEUV_PLUS_DIR_PATH . 'post-types/post-types.php';
}
function add_body_classes( $classes ) {
$classes[] = 'nexteuv-plus-'.NEXTEUV_PLUS_VERSION;
return $classes;
}
function enqueue_assets() {
wp_enqueue_style( 'nexteuv-plus-common', NEXTEUV_PLUS_DIR_URL . 'assets/css/common.css', false, NEXTEUV_PLUS_VERSION, 'all');
}
}
}
if( !function_exists( 'nexteuv_plus' ) ) {
function nexteuv_plus() {
return NextEuvPlus::instance();
}
}
if (class_exists ( 'NextEuvPlus' )) {
nexteuv_plus();
}
register_activation_hook( __FILE__, 'nexteuv_plus_activation_hook' );
function nexteuv_plus_activation_hook() {
$settings = get_option( NEXTEUV_CUSTOMISER_VAL );
if(empty($settings)) {
update_option( constant( 'NEXTEUV_CUSTOMISER_VAL' ), apply_filters( 'nexteuv_plus_customizer_default', array() ) );
}
}