private function __construct()
 {
     if (!is_super_admin()) {
         return;
     }
     /*
      * Call $plugin_slug from public plugin class.
      *
      */
     $this->plugin = Super_Simple_Events::get_instance();
     // Load admin style sheet and JavaScript.
     add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles'));
     add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_post_styles'));
     add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'));
     add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_post_scripts'));
     // Register settings
     add_action('admin_init', array($this, 'page_init'));
     // Add the options page and menu item.
     add_action('admin_menu', array($this, 'add_plugin_admin_menu'));
     // Add an action link pointing to the options page.
     $plugin_basename = plugin_basename(plugin_dir_path(__DIR__) . $this->plugin->get_plugin_slug() . '.php');
     add_filter('plugin_action_links_' . $plugin_basename, array($this, 'add_action_links'));
     // Events meta box
     add_action('add_meta_boxes', array($this, 'add_meta_boxes'), 1);
     add_action('save_post', array($this, 'save_post'));
     add_action('update_option_' . $this->plugin->option_name, array($this, 'update_option_callback'), 10, 2);
     // Add column in event post list
     add_action('manage_' . $this->plugin->get_plugin_slug() . '_posts_custom_column', array($this, 'custom_columns'), 10, 2);
     add_filter('manage_edit-' . $this->plugin->get_plugin_slug() . '_columns', array($this, 'add_column'));
     // Display upgrade messages
     if (!$this->plugin->is_higher_38()) {
         add_action('admin_notices', array($this, 'admin_notices'));
     }
 }
 /**
  * Specifies the classname and description, instantiates the widget,
  * loads localization files, and includes necessary stylesheets and JavaScript.
  */
 public function __construct()
 {
     /*
      * Call $plugin_slug from public plugin class.
      *
      */
     $this->plugin = Super_Simple_Events::get_instance();
     $this->widget_id = $this->plugin->get_plugin_slug() . '-id';
     parent::__construct($this->widget_id, sprintf(__('Upcoming Events (%s)', $this->plugin->get_plugin_slug()), $this->plugin->get_plugin_name()), array('classname' => $this->plugin->get_plugin_slug() . '-class', 'description' => sprintf(__('Display a list of upcoming events created in the %s plugin', $this->plugin->get_plugin_slug()), $this->plugin->get_plugin_name())));
     $this->alt_option_name = 'widget_' . $this->plugin->get_plugin_slug();
     // Register site styles and scripts
     add_action('wp_enqueue_scripts', array($this, 'register_widget_styles'));
     // Refreshing the widget's cached output with each new post
     add_action('save_post', array($this, 'flush_widget_cache'));
     add_action('deleted_post', array($this, 'flush_widget_cache'));
     add_action('switch_theme', array($this, 'flush_widget_cache'));
 }