Files
wp-multisite-waas/inc/development/query-monitor/panel/class-overview.php
2024-12-07 00:09:47 -07:00

121 lines
2.1 KiB
PHP

<?php
/**
* The WP Multisite WaaS Overview QM Panel
*
* @package WP_Ultimo
* @subpackage Development\Query_Monitor\Panel
* @since 2.0.11
*/
namespace WP_Ultimo\Development\Query_Monitor\Panel;
// Exit if accessed directly
defined('ABSPATH') || exit;
/**
* The WP Multisite WaaS Overview QM Panel
*
* @since 2.0.11
*/
class Overview extends \QM_Output_Html {
/**
* Initializes the panel.
*
* @since 2.0.11
*
* @param \QM_Collector $collector The collector associated with the panel.
*/
public function __construct($collector) {
parent::__construct($collector);
add_filter('qm/output/menus', array($this, 'admin_menu'), 1000);
add_filter('qm/output/panel_menus', array($this, 'panel_menu'), 1000);
} // end __construct;
/**
* The name of the panel.
*
* @since 2.0.11
* @return string
*/
public function name() {
return __('WP Multisite WaaS', 'wp-ultimo');
} // end name;
/**
* Output the contents of the panel.
*
* @since 2.0.11
* @return void
*/
public function output() {
$data = $this->collector->get_data();
$this->before_tabular_output(); // phpcs:disable ?>
<thead>
<th>Header 1</th>
<th>Header 2</th>
</thead>
<tbody>
<td>Value Title</td>
<td>Value</td>
</tbody>
<?php // phpcs:enable
$this->after_tabular_output();
$this->before_non_tabular_output();
$data = $this->collector->get_data();
$this->after_non_tabular_output();
} // end output;
/**
* Adds the panel to the admin panel.
*
* @since 2.0.11
*
* @param array $menu The original menu.
* @return array
*/
public function admin_menu(array $menu) {
return $menu;
} // end admin_menu;
/**
* Adds a panel menu for the panel.
*
* @since 2.0.11
*
* @param array $menu The admin panel menu.
* @return array
*/
public function panel_menu(array $menu) {
$new_menu = array(
'wp-ultimo' => $this->menu(array(
'title' => esc_html__('WP Multisite WaaS', 'wp-ultimo'),
'id' => 'wp-ultimo',
)),
);
return $new_menu + $menu;
} // end panel_menu;
} // end class Overview;