Merge remote-tracking branch 'origin/QA_4_7' into QA_4_7
[phpmyadmin.git] / server_status_processes.php
blobde71a8c6f76efb69ec26b5d5466bb3f113279689
1 <?php
2 /* vim: set expandtab sw=4 ts=4 sts=4: */
3 /**
4 * displays the server status > processes list
6 * @package PhpMyAdmin
7 */
9 use PMA\libraries\Response;
10 use PMA\libraries\ServerStatusData;
12 require_once 'libraries/common.inc.php';
13 require_once 'libraries/server_common.inc.php';
14 require_once 'libraries/server_status_processes.lib.php';
16 /**
17 * Replication library
19 require_once 'libraries/replication.inc.php';
20 require_once 'libraries/replication_gui.lib.php';
22 $ServerStatusData = new ServerStatusData();
23 $response = Response::getInstance();
25 /**
26 * Kills a selected process
27 * on ajax request
29 if ($response->isAjax() && !empty($_REQUEST['kill'])) {
30 $kill = intval($_REQUEST['kill']);
31 $query = $GLOBALS['dbi']->getKillQuery($kill);
32 if ($GLOBALS['dbi']->tryQuery($query)) {
33 $message = PMA\libraries\Message::success(
34 __('Thread %s was successfully killed.')
36 $response->setRequestStatus(true);
37 } else {
38 $message = PMA\libraries\Message::error(
39 __(
40 'phpMyAdmin was unable to kill thread %s.'
41 . ' It probably has already been closed.'
44 $response->setRequestStatus(false);
46 $message->addParam($kill);
47 $response->addJSON('message', $message);
48 } elseif ($response->isAjax() && !empty($_REQUEST['refresh'])) {
49 // Only sends the process list table
50 $response->addHTML(PMA_getHtmlForServerProcessList());
51 } else {
52 // Load the full page
53 $header = $response->getHeader();
54 $scripts = $header->getScripts();
55 $scripts->addFile('server_status_processes.js');
56 $response->addHTML('<div>');
57 $response->addHTML($ServerStatusData->getMenuHtml());
58 $response->addHTML(PMA_getHtmlForProcessListFilter());
59 $response->addHTML(PMA_getHtmlForServerProcesslist());
60 $response->addHTML(PMA_getHtmlForProcessListAutoRefresh());
61 $response->addHTML('</div>');
63 exit;