From 07d1f1236c11b4261ab2b954a91278711a24901c Mon Sep 17 00:00:00 2001 From: winter Date: Sun, 11 May 2025 20:25:11 +0100 Subject: sql console in admin menu + other misc --- routes/admin.php | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'routes/admin.php') diff --git a/routes/admin.php b/routes/admin.php index 82981c9..20c6ee5 100644 --- a/routes/admin.php +++ b/routes/admin.php @@ -1,5 +1,6 @@ mount('/fragment/admin/plugins/download', function (array $success = true; } render_template('admin/plugin_download_form', ['success' => $success]); +}); + +Router::getInstance()->mount('/admin/sql-console', function (array $args) { + UserAccount::requireByCurrentSession()->requireAdmin(); + render_template('admin/sql_console_page'); +}); + +Router::getInstance()->mount('/fragment/admin/sql-console/query', function (array $args) { + UserAccount::requireByCurrentSession()->requireAdmin(); + $results = null; + $error = null; + if (isset($_POST['query'])) { + try { + $pdo = Db::getInstance()->getPdo(); + $query = $pdo->query($_POST['query'], PDO::FETCH_ASSOC); + $results = $query->fetchAll(); + } catch (\PDOException $e) { + $error = $e; + } + } + render_template('admin/sql_console_form', ['results' => $results, 'error' => $error]); }); \ No newline at end of file -- cgit v1.3