/**
  * Give the user options for how to handle their legacy Stream records
  *
  * @action admin_notices
  * @return void
  */
 public static function show_migrate_notice()
 {
     if (!isset($_GET['migrate_action']) && WP_Stream::is_connected() && WP_Stream_Admin::is_stream_screen() && !empty(self::$record_count) && false === get_transient(self::MIGRATE_DELAY_TRANSIENT)) {
         return true;
     }
     return false;
 }
 /**
  * Load our classes, actions/filters, only if our big brother is activated.
  * GO GO GO!
  *
  * @return void
  */
 public function load()
 {
     add_action('all_admin_notices', array($this, 'admin_notices'));
     // Load settings
     require_once WP_STREAM_REPORTS_INC_DIR . 'class-wp-stream-reports-settings.php';
     add_action('init', array('WP_Stream_Reports_Settings', 'load'), 9);
     // Load date interval
     require_once WP_STREAM_CLASS_DIR . 'class-wp-stream-date-interval.php';
     require_once WP_STREAM_REPORTS_INC_DIR . 'class-wp-stream-reports-date-interval.php';
     add_action('init', array('WP_Stream_Reports_Date_Interval', 'get_instance'));
     // Load metaboxes and charts
     require_once WP_STREAM_REPORTS_INC_DIR . 'class-wp-stream-reports-meta-boxes.php';
     require_once WP_STREAM_REPORTS_INC_DIR . 'class-wp-stream-reports-charts.php';
     add_action('init', array('WP_Stream_Reports_Metaboxes', 'get_instance'), 12);
     // Load template tags
     require_once WP_STREAM_REPORTS_INC_DIR . 'template-tags.php';
     // Register new submenu
     add_action('network_admin_menu', array($this, 'register_menu'), 11);
     if (WP_Stream::is_connected() || WP_Stream::is_development_mode()) {
         add_action('admin_menu', array($this, 'register_menu'), 11);
     }
     self::$disallow_access = apply_filters('wp_stream_reports_disallow_site_access', false);
     // Register and enqueue the administration scripts
     add_action('admin_enqueue_scripts', array($this, 'register_ui_assets'), 20);
     add_action('admin_print_scripts', array($this, 'dequeue_media_conflicts'), 9999);
 }
Beispiel #3
0
 /**
  * Check is menu is present in menu array
  */
 public function test_register_menu()
 {
     do_action('admin_menu');
     global $menu, $submenu;
     //Check main menu
     $this->assertTrue(in_array('wp_stream', reset($menu)));
     if (WP_Stream::is_connected() || WP_Stream::is_development_mode()) {
         //Check submenu
         $this->assertTrue(in_array('wp_stream_settings', $submenu['wp_stream'][1]));
     }
 }
 /**
  * Load our classes, actions/filters, only if our big brother is activated.
  * GO GO GO!
  *
  * @return void
  */
 public function load()
 {
     if (!apply_filters('wp_stream_notifications_disallow_site_access', false) && (WP_Stream::is_connected() || WP_Stream::is_development_mode())) {
         add_action('admin_menu', array($this, 'register_menu'), 11);
     }
     // Load settings, enabling extensions to hook in
     require_once WP_STREAM_NOTIFICATIONS_INC_DIR . 'class-wp-stream-notifications-settings.php';
     add_action('init', array('WP_Stream_Notifications_Settings', 'load'), 9);
     if (WP_Stream_API::is_restricted()) {
         add_action('in_admin_header', array(__CLASS__, 'in_admin_header'));
         return;
     }
     // Include all adapters
     include_once WP_STREAM_NOTIFICATIONS_INC_DIR . 'class-wp-stream-notifications-adapter.php';
     $adapters = array('email', 'push', 'sms');
     foreach ($adapters as $adapter) {
         include WP_STREAM_NOTIFICATIONS_INC_DIR . 'adapters/class-wp-stream-notifications-adapter-' . $adapter . '.php';
     }
     // Load Matcher
     include_once WP_STREAM_NOTIFICATIONS_INC_DIR . 'class-wp-stream-notifications-matcher.php';
     $this->matcher = new WP_Stream_Notifications_Matcher();
 }
 /**
  * Add a specific body class to all Stream admin screens
  *
  * @filter admin_body_class
  *
  * @param  string $classes
  *
  * @return string $classes
  */
 public static function admin_body_class($classes)
 {
     if (self::is_stream_screen()) {
         $classes .= sprintf(' %s ', self::ADMIN_BODY_CLASS);
         if (WP_Stream::is_connected() || WP_Stream::is_development_mode()) {
             $classes .= ' wp_stream_connected ';
         } else {
             $classes .= ' wp_stream_disconnected ';
         }
         if (WP_Stream_API::is_restricted()) {
             $classes .= ' wp_stream_restricted ';
         }
     }
     $settings_pages = array(self::SETTINGS_PAGE_SLUG);
     if (isset($_GET['page']) && in_array($_GET['page'], $settings_pages)) {
         $classes .= sprintf(' %s ', self::SETTINGS_PAGE_SLUG);
     }
     return $classes;
 }