From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- .../Server/Status/MonitorController.php | 146 +++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 srcs/phpmyadmin/libraries/classes/Controllers/Server/Status/MonitorController.php (limited to 'srcs/phpmyadmin/libraries/classes/Controllers/Server/Status/MonitorController.php') diff --git a/srcs/phpmyadmin/libraries/classes/Controllers/Server/Status/MonitorController.php b/srcs/phpmyadmin/libraries/classes/Controllers/Server/Status/MonitorController.php new file mode 100644 index 0000000..1d2cadc --- /dev/null +++ b/srcs/phpmyadmin/libraries/classes/Controllers/Server/Status/MonitorController.php @@ -0,0 +1,146 @@ +monitor = $monitor; + } + + /** + * @return string HTML + */ + public function index(): string + { + $form = [ + 'server_time' => microtime(true) * 1000, + 'server_os' => SysInfo::getOs(), + 'is_superuser' => $this->dbi->isSuperuser(), + 'server_db_isLocal' => $this->data->db_isLocal, + ]; + + $javascriptVariableNames = []; + foreach ($this->data->status as $name => $value) { + if (is_numeric($value)) { + $javascriptVariableNames[] = $name; + } + } + + return $this->template->render('server/status/monitor/index', [ + 'image_path' => $GLOBALS['pmaThemeImage'], + 'javascript_variable_names' => $javascriptVariableNames, + 'form' => $form, + ]); + } + + /** + * @param array $params Request parameters + * @return array JSON + */ + public function chartingData(array $params): array + { + $json = []; + $json['message'] = $this->monitor->getJsonForChartingData( + $params['requiredData'] ?? '' + ); + + return $json; + } + + /** + * @param array $params Request parameters + * @return array JSON + */ + public function logDataTypeSlow(array $params): array + { + $json = []; + $json['message'] = $this->monitor->getJsonForLogDataTypeSlow( + (int) $params['time_start'], + (int) $params['time_end'] + ); + + return $json; + } + + /** + * @param array $params Request parameters + * @return array JSON + */ + public function logDataTypeGeneral(array $params): array + { + $json = []; + $json['message'] = $this->monitor->getJsonForLogDataTypeGeneral( + (int) $params['time_start'], + (int) $params['time_end'], + (bool) $params['limitTypes'], + (bool) $params['removeVariables'] + ); + + return $json; + } + + /** + * @param array $params Request parameters + * @return array JSON + */ + public function loggingVars(array $params): array + { + $json = []; + $json['message'] = $this->monitor->getJsonForLoggingVars( + $params['varName'], + $params['varValue'] + ); + + return $json; + } + + /** + * @param array $params Request parameters + * @return array JSON + */ + public function queryAnalyzer(array $params): array + { + $json = []; + $json['message'] = $this->monitor->getJsonForQueryAnalyzer( + $params['database'] ?? '', + $params['query'] ?? '' + ); + + return $json; + } +} -- cgit