config = $config; } /** * @return array JSON */ public function databases(): array { global $dblist; return ['databases' => $dblist->databases]; } /** * @param array $params Request parameters * * @return array JSON */ public function tables(array $params): array { return ['tables' => $this->dbi->getTables($params['database'])]; } /** * @param array $params Request parameters * * @return array JSON */ public function columns(array $params): array { return [ 'columns' => $this->dbi->getColumnNames( $params['database'], $params['table'] ), ]; } /** * @param array $params Request parameters * * @return array JSON */ public function getConfig(array $params): array { if (! isset($params['key'])) { $this->response->setRequestStatus(false); return ['message' => Message::error()]; } return ['value' => $this->config->get($params['key'])]; } /** * @param array $params Request parameters * * @return array */ public function setConfig(array $params): array { if (! isset($params['key'], $params['value'])) { $this->response->setRequestStatus(false); return ['message' => Message::error()]; } $result = $this->config->setUserValue( null, $params['key'], json_decode($params['value']) ); $json = []; if ($result !== true) { $this->response->setRequestStatus(false); $json['message'] = $result; } return $json; } }