File: //proc/self/cwd/wp-content/plugins/extensive-vc-addon/lib/framework/framework-functions.php
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
if ( ! function_exists( 'extensive_vc_add_admin_menu_page' ) ) {
/**
* Add admin menu page
*/
function extensive_vc_add_admin_menu_page() {
add_menu_page(
esc_html__( 'Extensive VC Addons', 'extensive-vc' ),
esc_html__( 'Extensive VC', 'extensive-vc' ),
'edit_posts',
'evc-admin-menu-page',
'extensive_vc_admin_about_page_content',
'dashicons-schedule',
'85'
);
}
add_action( 'admin_menu', 'extensive_vc_add_admin_menu_page' );
}
if ( ! function_exists( 'extensive_vc_admin_about_page_redirect' ) ) {
/**
* Redirect to admin about page on plugin activation
*/
function extensive_vc_admin_about_page_redirect() {
// If no activation redirect, bail
if ( ! get_transient( '_extensive_vc_admin_about_page_redirect' ) ) {
return;
}
// Delete the redirect transient
delete_transient( '_extensive_vc_admin_about_page_redirect' );
// If activating from network, or bulk, bail
if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
return;
}
// Redirect to welcome page
wp_safe_redirect( add_query_arg( array( 'page' => 'evc-admin-menu-page' ), esc_url( admin_url( 'index.php' ) ) ) );
exit;
}
add_action( 'admin_init', 'extensive_vc_admin_about_page_redirect' );
}
if ( ! function_exists( 'extensive_vc_add_admin_menu_settings_page' ) ) {
/**
* Add admin options page
*
* @see add_submenu_page function
*/
function extensive_vc_add_admin_menu_settings_page() {
add_submenu_page(
'evc-admin-menu-page',
esc_html__( 'Settings', 'extensive-vc' ),
esc_html__( 'Settings', 'extensive-vc' ),
'manage_options',
'evc-admin-options-page',
'extensive_vc_render_admin_menu_settings_page'
);
}
add_action( 'admin_menu', 'extensive_vc_add_admin_menu_settings_page', 11 );
}
if ( ! function_exists( 'extensive_vc_render_admin_menu_settings_page' ) ) {
/**
* Renders admin options
*/
function extensive_vc_render_admin_menu_settings_page() { ?>
<div class="wrap evc-admin-settings">
<h2><?php esc_attr_e( 'Extensive VC Settings', 'extensive-vc' ); ?></h2>
<?php settings_errors(); ?>
<h2 class="nav-tab-wrapper">
<?php
$tabs = array(
'general' => array(
'title' => esc_html__( 'General', 'extensive-vc' ),
'url' => 'evc-admin-options-page'
)
);
foreach ( $tabs as $tab ) {
$tab_url = 'admin.php?page=' . esc_attr( $tab['url'] );
$url = esc_attr( is_network_admin() ? network_admin_url( $tab_url ) : admin_url( $tab_url ) )
?>
<a class="nav-tab nav-tab-active" href="<?php echo esc_url( $url ); ?>">
<?php echo esc_html( $tab['title'] ); ?>
</a>
<?php
}
?>
</h2>
<form action="options.php" method="post">
<p class="evc-donate-link">
<?php esc_html_e( 'If you enjoy using Extensive VC plugin and find it useful, please consider making a donation. Your donation will help encourage and support the plugin\'s continued development and better user support. Thank you, WP Realize team.', 'extensive-vc' ); ?>
<a href="https://www.paypal.me/NenadObradovic" target="_blank"><?php esc_html_e( 'Donate', 'extensive-vc' ); ?></a>
</p>
<?php
settings_fields( 'evc_options_group' );
do_settings_sections( 'evc_options_page' );
submit_button();
?>
</form>
</div>
<?php
}
}
if ( ! function_exists( 'extensive_vc_add_admin_menu_about_page' ) ) {
/**
* Add admin menu about page
*
* @see add_submenu_page function
*/
function extensive_vc_add_admin_menu_about_page() {
add_submenu_page(
'evc-admin-menu-page',
esc_html__( 'About', 'extensive-vc' ),
esc_html__( 'About', 'extensive-vc' ),
'edit_posts',
'evc-admin-about-page',
'extensive_vc_admin_about_page_content'
);
// Remove duplicated admin menu page from submenu we want to have only about page
remove_submenu_page( 'evc-admin-menu-page', 'evc-admin-menu-page' );
}
add_action( 'admin_menu', 'extensive_vc_add_admin_menu_about_page', 12 );
}
if ( ! function_exists( 'extensive_vc_admin_about_page_content' ) ) {
/**
* Print admin about page content
*/
function extensive_vc_admin_about_page_content() {
?>
<div class="wrap about-wrap evc-admin-about">
<div class="evc-admin-about-content">
<h1><?php echo sprintf( esc_html__( 'Welcome to Extensive VC Addons %s', 'extensive-vc' ), EXTENSIVE_VC_VERSION ); ?></h1>
<img class="evc-admin-logo" src="<?php echo EXTENSIVE_VC_ASSETS_URL_PATH . '/img/extensive_vc_admin_logo.jpg'; ?>" alt="<?php esc_html_e( 'Extensive VC Admin Logo', 'extensive-vc' ); ?>" />
<div class="about-text">
<?php esc_html_e( 'Thank you for installing Extensive VC Addons! Extensive VC is most powerful plugin addons for WPBakery page builder.', 'extensive-vc' ); ?>
</div>
<img class="evc-admin-image" src="<?php echo EXTENSIVE_VC_ASSETS_URL_PATH . '/img/extensive_vc_admin_image.jpg'; ?>" alt="<?php esc_html_e( 'Extensive VC Admin Image', 'extensive-vc' ); ?>" />
<p class="evc-donate-link">
<?php esc_html_e( 'If you enjoy using Extensive VC plugin and find it useful, please consider making a donation. Your donation will help encourage and support the plugin\'s continued development and better user support. Thank you, WP Realize team.', 'extensive-vc' ); ?>
<a href="https://www.paypal.me/NenadObradovic" target="_blank"><?php esc_html_e( 'Donate', 'extensive-vc' ); ?></a>
</p>
</div>
</div>
<?php
}
}
if ( ! function_exists( 'extensive_vc_add_admin_bar_menu_options' ) ) {
/**
* Add admin menu link into WordPress toolbar
*
* @param $wp_admin_bar object
*/
function extensive_vc_add_admin_bar_menu_options( $wp_admin_bar ) {
if ( ! is_object( $wp_admin_bar ) ) {
global $wp_admin_bar;
}
$args = array(
'id' => 'evc-admin-bar-options-page',
'title' => sprintf( '<span class="ab-icon dashicons-before dashicons-schedule"></span> %s', esc_html__( 'Extensive VC', 'extensive-vc' ) ),
'href' => esc_url( admin_url('admin.php?page=evc-admin-options-page') )
);
$wp_admin_bar->add_node( $args );
}
if ( ! is_admin() ) {
add_action( 'admin_bar_menu', 'extensive_vc_add_admin_bar_menu_options', 100 );
}
}
if ( ! function_exists( 'extensive_vc_is_forwarded_admin_page_active' ) ) {
/**
* Checks if forwarded page in active
*
* @param $page string
*
* @return boolean
*/
function extensive_vc_is_forwarded_admin_page_active( $page ) {
$current_screen = function_exists( 'get_current_screen' ) ? get_current_screen() : '';
return ! empty( $current_screen ) ? $current_screen->post_type === $page : false;
}
}