/** * Initialize legacy functionality * * @since 2.1.1 */ public static final function init($class) { global $pagenow; /** Store parent */ self::$class = $class; /** Hook old shortcodes */ add_shortcode('rivasliderlite', array($class, 'do_shortcode')); add_shortcode('easingslider', array($class, 'do_shortcode')); /** Continue only if there are legacy settings to act upon */ if (get_option('easingslider_version') || get_option('activation') || get_option('sImg1')) { /** Import settings admin notice */ if ($pagenow == 'plugins.php' && !get_option('easingsliderlite_major_upgrade')) { add_action('admin_notices', create_function('', '_e( "<div class=\'message updated\'><p>Don\'t forget to import your old Easing Slider settings. <a href=\'admin.php?page=easingsliderlite_edit_slideshow\'>Click here.</a></p></div>", "easingsliderlite" );')); } /** Hook actions */ add_action('easingsliderlite_edit_slideshow_actions', array(__CLASS__, 'do_legacy_import')); add_action('easingsliderlite_edit_settings_actions', array(__CLASS__, 'do_legacy_import')); add_action('easingsliderlite_edit_settings_actions', array(__CLASS__, 'do_legacy_remove')); add_action('easingsliderlite_welcome_panel_before', array(__CLASS__, 'print_legacy_message')); add_action('easingsliderlite_settings_after', array(__CLASS__, 'print_legacy_settings_field'), 10, 2); } }
/** * Constructor * * @since 2.0 */ private function __construct() { global $wp_version; /** Load plugin textdomain for language capabilities */ load_plugin_textdomain('easingsliderlite', false, dirname(plugin_basename(self::get_file())) . '/languages'); /** Flag the new admin area if appropriate */ $this->is_updated_admin = version_compare($wp_version, '3.8', '>=') ? true : false; /** Activation and deactivation hooks. Static methods are used to avoid activation/uninstallation scoping errors. */ if (is_multisite()) { register_activation_hook(__FILE__, array(__CLASS__, 'do_network_activation')); register_uninstall_hook(__FILE__, array(__CLASS__, 'do_network_uninstall')); } else { register_activation_hook(__FILE__, array(__CLASS__, 'do_activation')); register_uninstall_hook(__FILE__, array(__CLASS__, 'do_uninstall')); } /** Legacy functionality */ if (apply_filters('easingsliderlite_legacy_functionality', __return_true())) { ESL_Legacy::init($this); } /** Plugin shortcodes */ add_shortcode('easingsliderlite', array($this, 'do_shortcode')); /** Plugin actions */ add_action('init', array($this, 'register_all_styles')); add_action('init', array($this, 'register_all_scripts')); add_action('admin_menu', array($this, 'add_menus')); add_action('admin_menu', array($this, 'do_actions')); add_action('admin_body_class', array($this, 'admin_body_classes')); add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts')); add_action('media_buttons', array($this, 'add_media_button'), 11); add_action('print_media_templates', array($this, 'print_backbone_templates')); add_action('wp_before_admin_bar_render', array($this, 'add_admin_bar_links')); /** Do plugin upgrades */ add_action('admin_init', array('ESL_Upgrade', 'do_upgrades')); /** Register our custom widget */ add_action('widgets_init', create_function('', 'register_widget( "ESL_Widget" );')); /** Some hooks for our own custom actions */ add_action('easingsliderlite_edit_slideshow_actions', array($this, 'do_slideshow_actions')); add_action('easingsliderlite_customizer_actions', array($this, 'do_customizer_actions')); add_action('easingsliderlite_edit_settings_actions', array($this, 'do_settings_actions')); /** Get plugin settings */ $settings = get_option('easingsliderlite_settings'); /** Load slideshow scripts & styles in the header if set to do so */ if (isset($settings['load_scripts']) && $settings['load_scripts'] == 'header') { add_action('wp_enqueue_scripts', array('ESL_Slideshow', 'enqueue_scripts')); } if (isset($settings['load_styles']) && $settings['load_styles'] == 'header') { add_action('wp_enqueue_scripts', array('ESL_Slideshow', 'enqueue_styles')); add_action('wp_head', array('ESL_Slideshow', 'print_custom_styles')); } /** Initialization hook for adding external functionality */ do_action_ref_array('easingsliderlite', array($this)); }