/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses add_action() * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->db_name = $vars['db_name']; $this->prefix = $vars['prefix']; $this->version = $vars['version']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->plugin_dir_path = $vars['plugin_dir_path']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); $this->fancybox_interface_slug = $vars['fancybox_interface_slug']; // Get our settings instance. $this->settings = NGGOBASIC_Settings::get_instance(); // Add our action hooks. add_action('admin_menu', array($this, 'add_options_page')); add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts_and_styles')); /** * Remove all admin toolbars, notifications and navigation elements from * the Fancybox settings interface. * * We need to detect the page the PHP way here as get_current_screen() * isn't available in time to access the admin_bar_init hook. */ if (isset($_GET['page']) && $_GET['page'] == $this->fancybox_interface_slug) { // Remove top admin bar. add_filter('init', array($this, 'remove_top_admin_bar')); // Doesn't seem to work on admin_init. // Remove the update nag. add_action('admin_notices', array($this, 'remove_update_nag'), 1); // Priority 1 is important here. // Remove NextGEN's "Gallery" menu item. add_action('admin_init', array($this, 'remove_nextgen_menu_item')); // Doesn't seem to work on admin_menu. // Remove all WordPress menu items. add_action('admin_menu', array($this, 'remove_admin_menu_items')); // Remove the WordPress colophon and version number. add_action('admin_init', array($this, 'remove_footer')); } }
/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses add_action() * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->settings_slug = $vars['settings_slug']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->prefix = $vars['prefix']; $this->version = $vars['version']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); $this->plugin_dir_file = $vars['plugin_dir_file']; // Get our settings instance. $this->settings = NGGOBASIC_Settings::get_instance(); // Reset our class/rel code if accidentally changed. add_action('admin_init', array($this, 'update_modified_fancybox_code')); // Register and enqueue Optimizer's JavaScript file for NextGEN's lightbox settings. add_action('admin_enqueue_scripts', array($this, 'enqueue_nextgen_options_page_js')); // Install our lightbox on initial activation add_action('admin_footer', array($this, 'install_controller')); // Uninstall Fancybox if Optimizer is deactivated. register_deactivation_hook($this->plugin_dir_file, array($this, 'uninstall_controller')); }
/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses add_action() * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->prefix = $vars['prefix']; $this->version = $vars['version']; $this->fancybox_version = $vars['fancybox_version']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->plugin_dir_path = $vars['plugin_dir_path']; $this->settings_slug = $vars['settings_slug']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); // Get our settings instance. $this->settings = NGGOBASIC_Settings::get_instance(); // Define our Fancybox CSS filepath. $this->fancybox_css_path = $this->plugin_dir_path . "fancybox/" . $this->prefix . ".jquery.fancybox-" . $this->fancybox_version . ".css"; // Add our action hooks. add_action('admin_notices', array($this, 'check_for_deregister_jquery_regex')); add_action('admin_notices', array($this, 'fancybox_regex_error_message')); }
/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses add_action() * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->db_name = $vars['db_name']; $this->prefix = $vars['prefix']; $this->version = $vars['version']; $this->display_name = $vars['display_name']; $this->settings_slug = $vars['settings_slug']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->plugin_dir_path = $vars['plugin_dir_path']; $this->fancybox_version = $vars['fancybox_version']; $this->nextgen_v1 = $vars['nextgen_v1']; $this->nextgen_v2 = $vars['nextgen_v2']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); $this->fancybox_interface_slug = $vars['fancybox_interface_slug']; // Get our settings instance. $this->settings = NGGOBASIC_Settings::get_instance(); // Add our action hooks. add_action('admin_menu', array($this, 'add_options_page')); add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts_and_styles')); }
/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses add_action(), register_deactivation_hook() * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->prefix = $vars['prefix']; $this->version = $vars['version']; $this->settings_slug = $vars['settings_slug']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->plugin_dir_path = $vars['plugin_dir_path']; $this->fancybox_handle = $vars['fancybox_handle']; $this->fancybox_version = $vars['fancybox_version']; $this->nextgen_v207 = $vars['nextgen_v207']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); $this->plugin_dir_file = $vars['plugin_dir_file']; // Get our settings instance. $this->settings = NGGOBASIC_Settings::get_instance(); // Access NextGEN's settings instance. // Make sure the class exists first, as NextGEN (as of v2.0.7x) no longer initializes when other plugins are activating (see: C_NextGEN_Bootstrap::is_not_activating()). // Without this check, a "Fatal error: Class 'C_NextGen_Settings' not found" error occurs and halts activation. if (class_exists('C_NextGen_Settings')) { $this->ngg_settings = C_NextGen_Settings::get_instance(); } // Define the path to Fancybox's CSS stylesheet. $this->styles = $this->plugin_dir_url . 'fancybox/' . $this->prefix . '.jquery.fancybox-' . $this->fancybox_version . '.css'; // Define the path to Fancybox's script. $this->scripts = $this->plugin_dir_url . 'fancybox/' . $this->prefix . '.jquery.fancybox-' . $this->fancybox_version . '.pack.js'; // Hook into the do_action in C_Lightbox_Library_Manager::register_defaults() for in-memory, front-end lightbox registration in NextGEN 2.0.7+. if ($this->nextgen_v207) { add_action('ngg_registered_default_lightboxes', array($this, 'register_fancybox')); } // Reset our class/rel code and script and stylesheet URLs if accidentally changed. add_action('admin_init', array($this, 'update_modified_fancybox_urls')); // Register and enqueue Optimizer's JavaScript file for NextGEN's lightbox settings. add_action('admin_enqueue_scripts', array($this, 'enqueue_nextgen_options_page_js')); // Install our lightbox on activation, and reinstall on domain change. add_action('admin_footer', array($this, 'install_controller')); // Uninstall our Fancybox menu item if Optimizer is deactivated. register_deactivation_hook($this->plugin_dir_file, array($this, 'uninstall_controller')); }
/** * Class initialization. * * Get and set required properties, and add our action hooks, function * calls and file includes to initialize this class. * * @wp-hook void * @uses void * @since 2.0.0 * @return void */ public function init() { // Retrieve required properties from our main plugin class. $this->plugin = NextGEN_Gallery_Optimizer_Basic::get_instance(); $vars = $this->plugin->get_vars(); $this->db = $vars['db']; $this->db_name = $vars['db_name']; $this->prefix = $vars['prefix']; $this->version = $vars['version']; $this->plugin_dir_url = $vars['plugin_dir_url']; $this->plugin_dir_path = $vars['plugin_dir_path']; $this->nextgen_v1 = $vars['nextgen_v1']; $this->nextgen_v2 = $vars['nextgen_v2']; // Retrieve required properties from our main admin class. $this->admin = NGGOBASIC_Admin::get_instance(); $vars = $this->admin->get_vars(); $this->plugin_dir_file = $vars['plugin_dir_file']; // Run our settings methods. $this->get_validation(); $this->register_setting(); $this->install(); $this->set_settings(); }
/** * Our class router. * * Only loads the code required for a given page view. * * Fully separates admin requests from the front-end, and also NextGEN * Legacy code from NextGEN v2.0. * * @wp-hook void * @uses is_admin() * @since 2.0.0 * @return null|void */ function route_request() { if (is_admin()) { if (basename($_SERVER['PHP_SELF']) == 'plugins.php' && !is_array($this->db)) { // Redirect to settings page on first activation. add_action('init', array($this, 'redirect_to_settings_page')); } // Include and instantiate our main admin class. require_once $this->plugin_dir_path . 'admin/class-' . $this->prefix . '-admin.php'; $instance = NGGOBASIC_Admin::get_instance(); $instance->init(); } if (!is_admin()) { if ($this->nextgen_v1) { require_once $this->plugin_dir_path . 'public/nextgen-v1/class-' . $this->prefix . '-optimize-nextgen-v1.php'; $instance = NGGOBASIC_Optimize_NextGEN_V1::get_instance(); $instance->init(); add_action('init', array($this, 'remove_nextgen_v1_version')); add_action('wp_head', array($this, 'add_nextgen_v1_version')); } if ($this->nextgen_v2) { if ($this->db['fancybox']) { require_once $this->plugin_dir_path . 'public/nextgen-v2/class-' . $this->prefix . '-register-fancybox-nextgen-v2.php'; $instance = NGGOBASIC_Register_Fancybox_NextGEN_V2::get_instance(); $instance->init(); } if ($this->db['optimize_front_end'] || $this->db['optimize_gallery_pages']) { // Optional settings for NextGEN 2.0. require_once $this->plugin_dir_path . 'public/nextgen-v2/class-' . $this->prefix . '-optimize-nextgen-v2.php'; $instance = NGGOBASIC_Optimize_NextGEN_V2::get_instance(); $instance->init(); } // Add our version to NextGEN's inline version comment, for easier debugging for both developers. add_filter('show_nextgen_version', array($this, 'filter_nextgen_v2_version')); } } }