3 declare(strict_types
=1);
5 namespace PhpMyAdmin\Controllers\Server\Status
;
7 use PhpMyAdmin\DatabaseInterface
;
8 use PhpMyAdmin\ResponseRenderer
;
9 use PhpMyAdmin\Server\Status\Data
;
10 use PhpMyAdmin\Server\Status\Processes
;
11 use PhpMyAdmin\Template
;
14 class ProcessesController
extends AbstractController
16 /** @var DatabaseInterface */
22 public function __construct(
23 ResponseRenderer
$response,
26 DatabaseInterface
$dbi,
29 parent
::__construct($response, $template, $data);
31 $this->processes
= $processes;
34 public function __invoke(): void
37 'showExecuting' => $_POST['showExecuting'] ??
null,
38 'full' => $_POST['full'] ??
null,
39 'column_name' => $_POST['column_name'] ??
null,
40 'order_by_field' => $_POST['order_by_field'] ??
null,
41 'sort_order' => $_POST['sort_order'] ??
null,
43 $GLOBALS['errorUrl'] = Url
::getFromRoute('/');
45 if ($this->dbi
->isSuperUser()) {
46 $this->dbi
->selectDb('mysql');
49 $this->addScriptFiles(['server/status/processes.js']);
52 if (! empty($params['showExecuting'])) {
57 'ajax_request' => true,
58 'full' => $params['full'] ??
'',
59 'column_name' => $params['column_name'] ??
'',
60 'order_by_field' => $params['order_by_field'] ??
'',
61 'sort_order' => $params['sort_order'] ??
'',
64 $listHtml = $this->template
->render('server/status/processes/list', $this->processes
->getList($params));
66 $this->render('server/status/processes/index', [
67 'url_params' => $urlParams,
68 'is_checked' => $isChecked,
69 'server_process_list' => $listHtml,