Astra_Theme_Extension::__construct()
Constructor
Description
Source
File: classes/class-astra-theme-extension.php
public function __construct() {
// Activation hook.
register_activation_hook( ASTRA_EXT_FILE, array( $this, 'activation_reset' ) );
// deActivation hook.
register_deactivation_hook( ASTRA_EXT_FILE, array( $this, 'deactivation_reset' ) );
// Includes Required Files.
$this->includes();
if ( is_admin() ) {
add_action( 'admin_init', array( $this, 'min_theme_version__error' ) );
add_filter( 'astra_menu_options', array( $this, 'extension_menu_options' ), 9, 1 );
// Enqueue Admin Scripts.
add_action( 'astra_admin_settings_scripts', array( $this, 'admin_scripts' ) );
// Ajax requests.
add_action( 'wp_ajax_astra_addon_activate_module', array( $this, 'activate_module' ) );
add_action( 'wp_ajax_astra_addon_deactivate_module', array( $this, 'deactivate_module' ) );
add_action( 'wp_ajax_astra_addon_bulk_activate_modules', array( $this, 'bulk_activate_modules' ) );
add_action( 'wp_ajax_astra_addon_bulk_deactivate_modules', array( $this, 'bulk_deactivate_modules' ) );
add_action( 'wp_ajax_astra_addon_clear_cache', array( $this, 'clear_cache' ) );
// Enable/Disable beta updates.
add_action( 'wp_ajax_astra_beta_updates', array( $this, 'enable_disable_beta_updates' ) );
// Enable/Disable file generation.
add_action( 'wp_ajax_astra_file_generation', array( $this, 'enable_disable_file_generation' ) );
// Admin enqueue script alpha color picker.
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_color_picker_scripts' ) );
}
add_action( 'init', array( $this, 'addons_action_hooks' ), 1 );
add_action( 'after_setup_theme', array( $this, 'setup' ) );
add_action( 'customize_controls_enqueue_scripts', array( $this, 'controls_scripts' ) );
add_action( 'customize_register', array( $this, 'customize_register_before_theme' ), 5 );
add_action( 'customize_register', array( $this, 'addon_customize_register' ), 99 );
add_action( 'customize_preview_init', array( $this, 'preview_init' ), 1 );
add_filter( 'body_class', array( $this, 'body_classes' ), 11, 1 );
// Load textdomain.
add_action( 'plugins_loaded', array( $this, 'load_textdomain' ) );
add_action( 'plugins_loaded', array( $this, 'common_plugin_dependent_files' ) );
add_action( 'wpml_loaded', array( $this, 'wpml_compatibility' ) );
// add compatibility for custom layouts with polylang plugin.
add_action( 'pll_init', array( $this, 'wpml_compatibility' ) );
// Astra Addon List filter.
add_filter( 'astra_addon_list', array( $this, 'astra_addon_list' ) );
add_filter( 'astra_quick_settings', array( $this, 'astra_addon_quick_settings' ) );
add_action( 'astra_addon_bulk_action', array( $this, 'astra_addon_bulk_action_markup' ) );
add_action( 'plugin_action_links_' . ASTRA_EXT_BASE, array( $this, 'action_links' ) );
if ( Astra_Ext_White_Label_Markup::show_branding() ) {
add_action( 'astra_welcome_page_right_sidebar_before', array( $this, 'addon_licence_form' ) );
} else {
// if White Lebel settings is selected to Hide setting.
add_action( 'astra_welcome_page_content_after', array( $this, 'addon_licence_form' ) );
}
add_action( 'astra_welcome_page_right_sidebar_content', array( $this, 'version_rollback_form' ), 30 );
add_action( 'astra_welcome_page_right_sidebar_content', array( $this, 'astra_refresh_assets_files' ), 40 );
add_action( 'astra_welcome_page_right_sidebar_content', array( $this, 'astra_beta_updates_form' ), 50 );
// Redirect if old addon screen rendered.
add_action( 'admin_init', array( $this, 'redirect_addon_listing_page' ) );
add_action( 'enqueue_block_editor_assets', array( $this, 'addon_gutenberg_assets' ) );
add_filter( 'astra_svg_icons', array( $this, 'astra_addon_svg_icons' ), 1, 10 );
add_filter( 'bsf_show_versions_to_rollback_astra-addon', array( $this, 'astra_addon_rollback_versions_limit' ), 1, 10 );
}
Expand full source code Collapse full source code View on Trac