Cleanup: Remoción masiva de restos de WordPress y consolidación de archivos GKACHELE™
This commit is contained in:
@@ -0,0 +1,207 @@
|
||||
<?php
|
||||
class Chromax_Customizer_Notify {
|
||||
|
||||
private $recommended_actions;
|
||||
|
||||
|
||||
private $recommended_plugins;
|
||||
|
||||
private $config;
|
||||
|
||||
private static $instance;
|
||||
|
||||
|
||||
private $recommended_actions_title;
|
||||
|
||||
|
||||
private $recommended_plugins_title;
|
||||
|
||||
|
||||
private $dismiss_button;
|
||||
|
||||
|
||||
private $install_button_label;
|
||||
|
||||
|
||||
private $activate_button_label;
|
||||
|
||||
|
||||
private $chromax_deactivate_button_label;
|
||||
|
||||
|
||||
public static function init( $config ) {
|
||||
if ( ! isset( self::$instance ) && ! ( self::$instance instanceof Chromax_Customizer_Notify ) ) {
|
||||
self::$instance = new Chromax_Customizer_Notify;
|
||||
if ( ! empty( $config ) && is_array( $config ) ) {
|
||||
self::$instance->config = $config;
|
||||
self::$instance->setup_config();
|
||||
self::$instance->setup_actions();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function setup_config() {
|
||||
|
||||
global $chromax_customizer_notify_recommended_plugins;
|
||||
global $chromax_customizer_notify_recommended_actions;
|
||||
|
||||
global $install_button_label;
|
||||
global $activate_button_label;
|
||||
global $chromax_deactivate_button_label;
|
||||
|
||||
$this->recommended_actions = isset( $this->config['recommended_actions'] ) ? $this->config['recommended_actions'] : array();
|
||||
$this->recommended_plugins = isset( $this->config['recommended_plugins'] ) ? $this->config['recommended_plugins'] : array();
|
||||
|
||||
$this->recommended_actions_title = isset( $this->config['recommended_actions_title'] ) ? $this->config['recommended_actions_title'] : '';
|
||||
$this->recommended_plugins_title = isset( $this->config['recommended_plugins_title'] ) ? $this->config['recommended_plugins_title'] : '';
|
||||
$this->dismiss_button = isset( $this->config['dismiss_button'] ) ? $this->config['dismiss_button'] : '';
|
||||
|
||||
$chromax_customizer_notify_recommended_plugins = array();
|
||||
$chromax_customizer_notify_recommended_actions = array();
|
||||
|
||||
if ( isset( $this->recommended_plugins ) ) {
|
||||
$chromax_customizer_notify_recommended_plugins = $this->recommended_plugins;
|
||||
}
|
||||
|
||||
if ( isset( $this->recommended_actions ) ) {
|
||||
$chromax_customizer_notify_recommended_actions = $this->recommended_actions;
|
||||
}
|
||||
|
||||
$install_button_label = isset( $this->config['install_button_label'] ) ? $this->config['install_button_label'] : '';
|
||||
$activate_button_label = isset( $this->config['activate_button_label'] ) ? $this->config['activate_button_label'] : '';
|
||||
$chromax_deactivate_button_label = isset( $this->config['chromax_deactivate_button_label'] ) ? $this->config['chromax_deactivate_button_label'] : '';
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function setup_actions() {
|
||||
|
||||
// Register the section
|
||||
add_action( 'customize_register', array( $this, 'chromax_plugin_notification_customize_register' ) );
|
||||
|
||||
// Enqueue scripts and styles
|
||||
add_action( 'customize_controls_enqueue_scripts', array( $this, 'chromax_customizer_notify_scripts_for_customizer' ), 0 );
|
||||
|
||||
/* ajax callback for dismissable recommended actions */
|
||||
add_action( 'wp_ajax_quality_customizer_notify_dismiss_action', array( $this, 'chromax_customizer_notify_dismiss_recommended_action_callback' ) );
|
||||
|
||||
add_action( 'wp_ajax_ti_customizer_notify_dismiss_recommended_plugins', array( $this, 'chromax_customizer_notify_dismiss_recommended_plugins_callback' ) );
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function chromax_customizer_notify_scripts_for_customizer() {
|
||||
|
||||
wp_enqueue_style( 'chromax-customizer-notify-css', get_template_directory_uri() . '/inc/customizer/customizer-plugin-notice/css/chromax-customizer-notify.css', array());
|
||||
|
||||
wp_enqueue_style( 'plugin-install' );
|
||||
wp_enqueue_script( 'plugin-install' );
|
||||
wp_add_inline_script( 'plugin-install', 'var pagenow = "customizer";' );
|
||||
|
||||
wp_enqueue_script( 'updates' );
|
||||
|
||||
wp_enqueue_script( 'chromax-customizer-notify-js', get_template_directory_uri() . '/inc/customizer/customizer-plugin-notice/js/chromax-customizer-notify.js', array( 'customize-controls' ));
|
||||
wp_localize_script(
|
||||
'chromax-customizer-notify-js', 'chromaxCustomizercompanionObject', array(
|
||||
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
||||
'template_directory' => get_template_directory_uri(),
|
||||
'base_path' => admin_url(),
|
||||
'activating_string' => __( 'Activating', 'chromax' ),
|
||||
'nonce' => wp_create_nonce('ajax-nonce')
|
||||
)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function chromax_plugin_notification_customize_register( $wp_customize ) {
|
||||
|
||||
|
||||
require_once get_template_directory() . '/inc/customizer/customizer-plugin-notice/chromax-customizer-notify-section.php';
|
||||
|
||||
$wp_customize->register_section_type( 'Chromax_Customizer_Notify_Section' );
|
||||
|
||||
$wp_customize->add_section(
|
||||
new chromax_Customizer_Notify_Section(
|
||||
$wp_customize,
|
||||
'Chromax-customizer-notify-section',
|
||||
array(
|
||||
'title' => $this->recommended_actions_title,
|
||||
'plugin_text' => $this->recommended_plugins_title,
|
||||
'dismiss_button' => $this->dismiss_button,
|
||||
'priority' => 0,
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function chromax_customizer_notify_dismiss_recommended_action_callback() {
|
||||
|
||||
global $chromax_customizer_notify_recommended_actions;
|
||||
|
||||
$action_id = ( isset( $_GET['id'] ) ) ? $_GET['id'] : 0;
|
||||
|
||||
echo esc_html( $action_id ); /* this is needed and it's the id of the dismissable required action */
|
||||
|
||||
if ( ! empty( $action_id ) ) {
|
||||
|
||||
if ( get_option( 'chromax_customizer_notify_show' ) ) {
|
||||
|
||||
$chromax_customizer_notify_show_recommended_actions = get_option( 'chromax_customizer_notify_show' );
|
||||
switch ( $_GET['todo'] ) {
|
||||
case 'add':
|
||||
$chromax_customizer_notify_show_recommended_actions[ $action_id ] = true;
|
||||
break;
|
||||
case 'dismiss':
|
||||
$chromax_customizer_notify_show_recommended_actions[ $action_id ] = false;
|
||||
break;
|
||||
}
|
||||
update_option( 'chromax_customizer_notify_show', $chromax_customizer_notify_show_recommended_actions );
|
||||
|
||||
|
||||
} else {
|
||||
$chromax_customizer_notify_show_recommended_actions = array();
|
||||
if ( ! empty( $chromax_customizer_notify_recommended_actions ) ) {
|
||||
foreach ( $chromax_customizer_notify_recommended_actions as $chromax_lite_customizer_notify_recommended_action ) {
|
||||
if ( $chromax_lite_customizer_notify_recommended_action['id'] == $action_id ) {
|
||||
$chromax_customizer_notify_show_recommended_actions[ $chromax_lite_customizer_notify_recommended_action['id'] ] = false;
|
||||
} else {
|
||||
$chromax_customizer_notify_show_recommended_actions[ $chromax_lite_customizer_notify_recommended_action['id'] ] = true;
|
||||
}
|
||||
}
|
||||
update_option( 'chromax_customizer_notify_show', $chromax_customizer_notify_show_recommended_actions );
|
||||
}
|
||||
}
|
||||
}
|
||||
die();
|
||||
}
|
||||
|
||||
|
||||
public function chromax_customizer_notify_dismiss_recommended_plugins_callback() {
|
||||
|
||||
$action_id = ( isset( $_GET['id'] ) ) ? $_GET['id'] : 0;
|
||||
|
||||
echo esc_html( $action_id ); /* this is needed and it's the id of the dismissable required action */
|
||||
|
||||
if ( ! empty( $action_id ) ) {
|
||||
|
||||
$chromax_lite_customizer_notify_show_recommended_plugins = get_option( 'chromax_customizer_notify_show_recommended_plugins' );
|
||||
|
||||
switch ( $_GET['todo'] ) {
|
||||
case 'add':
|
||||
$chromax_lite_customizer_notify_show_recommended_plugins[ $action_id ] = false;
|
||||
break;
|
||||
case 'dismiss':
|
||||
$chromax_lite_customizer_notify_show_recommended_plugins[ $action_id ] = true;
|
||||
break;
|
||||
}
|
||||
update_option( 'chromax_customizer_notify_show_recommended_plugins', $chromax_lite_customizer_notify_show_recommended_plugins );
|
||||
}
|
||||
die();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user