chore(query.php): rename proxy endpoint to query to better reflect how it's used

This commit is contained in:
Cory Dransfeldt 2025-05-03 11:48:08 -07:00
parent 92a3730e61
commit aa33cd72df
No known key found for this signature in database
4 changed files with 42 additions and 34 deletions

View file

@ -5,7 +5,7 @@ use App\Classes\BaseHandler;
require __DIR__ . '/../server/utils/init.php';
require __DIR__ . "/Classes/BaseHandler.php";
class ProxyHandler extends BaseHandler
class QueryHandler extends BaseHandler
{
public function __construct()
{
@ -55,23 +55,13 @@ class ProxyHandler extends BaseHandler
try {
$response = $this->fetchFromApi($data, $query);
$markdownFields = $_GET['markdown'] ?? [];
$markdownFields = is_array($markdownFields)
? $markdownFields
: explode(',', $markdownFields);
$markdownFields = array_map('trim', array_filter($markdownFields));
$markdownFields = $this->getMarkdownFieldsFromQuery();
if (!empty($response) && !empty($markdownFields)) {
foreach ($markdownFields as $field) {
if (!empty($response[0][$field])) $response[0]["{$field}_html"] = parseMarkdown($response[0][$field]);
}
}
if (!empty($response) && !empty($markdownFields)) $response = $this->parseMarkdownFields($response, $markdownFields);
$json = json_encode($response);
if ($this->cache) {
$this->cache->setex($cacheKey, $cacheDuration, $json);
}
if ($this->cache) $this->cache->setex($cacheKey, $cacheDuration, $json);
header('Content-Type: application/json');
echo $json;
@ -84,7 +74,25 @@ class ProxyHandler extends BaseHandler
{
return "proxy_{$data}" . ($id ? "_{$id}" : "");
}
private function getMarkdownFieldsFromQuery(): array {
$fields = $_GET['markdown'] ?? [];
if (!is_array($fields)) $fields = explode(',', $fields);
return array_map('trim', array_filter($fields));
}
$handler = new ProxyHandler();
private function parseMarkdownFields(array $data, array $fields): array {
foreach ($data as &$item) {
foreach ($fields as $field) {
if (!empty($item[$field])) $item["{$field}_html"] = parseMarkdown($item[$field]);
}
}
return $data;
}
}
$handler = new QueryHandler();
$handler->handleRequest();

34
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "coryd.dev",
"version": "3.4.2",
"version": "3.4.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "coryd.dev",
"version": "3.4.2",
"version": "3.4.3",
"license": "MIT",
"dependencies": {
"html-minifier-terser": "7.2.0",
@ -378,9 +378,9 @@
}
},
"node_modules/@asamuzakjp/css-color": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.5.tgz",
"integrity": "sha512-w7AmVyTTiU41fNLsFDf+gA2Dwtbx2EJtn2pbJNAGSRAg50loXy1uLXA3hEpD8+eydcomTurw09tq5/AyceCaGg==",
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.7.tgz",
"integrity": "sha512-Ok5fYhtwdyJQmU1PpEv6Si7Y+A4cYb8yNM9oiIJC9TzXPMuN9fvdonKJqcnz9TbFqV6bQ8z0giRq0iaOpGZV2g==",
"dev": true,
"license": "MIT",
"dependencies": {
@ -983,9 +983,9 @@
}
},
"node_modules/browserslist": {
"version": "4.24.4",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz",
"integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==",
"version": "4.24.5",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.5.tgz",
"integrity": "sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==",
"dev": true,
"funding": [
{
@ -1003,10 +1003,10 @@
],
"license": "MIT",
"dependencies": {
"caniuse-lite": "^1.0.30001688",
"electron-to-chromium": "^1.5.73",
"caniuse-lite": "^1.0.30001716",
"electron-to-chromium": "^1.5.149",
"node-releases": "^2.0.19",
"update-browserslist-db": "^1.1.1"
"update-browserslist-db": "^1.1.3"
},
"bin": {
"browserslist": "cli.js"
@ -1805,9 +1805,9 @@
"license": "MIT"
},
"node_modules/electron-to-chromium": {
"version": "1.5.148",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.148.tgz",
"integrity": "sha512-8uc1QXwwqayD4mblcsQYZqoi+cOc97A2XmKSBOIRbEAvbp6vrqmSYs4dHD2qVygUgn7Mi0qdKgPaJ9WC8cv63A==",
"version": "1.5.149",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.149.tgz",
"integrity": "sha512-UyiO82eb9dVOx8YO3ajDf9jz2kKyt98DEITRdeLPstOEuTlLzDA4Gyq5K9he71TQziU5jUVu2OAu5N48HmQiyQ==",
"dev": true,
"license": "ISC"
},
@ -4975,9 +4975,9 @@
}
},
"node_modules/ws": {
"version": "8.18.1",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz",
"integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==",
"version": "8.18.2",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz",
"integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==",
"dev": true,
"license": "MIT",
"engines": {

View file

@ -1,6 +1,6 @@
{
"name": "coryd.dev",
"version": "3.4.2",
"version": "3.4.3",
"description": "The source for my personal site. Built using 11ty (and other tools).",
"type": "module",
"engines": {

View file

@ -18,7 +18,7 @@ window.addEventListener("load", () => {
if (isDynamic && !isLoaded) {
const markdownFields = dialog.dataset.markdown || "";
try {
const res = await fetch(`/api/proxy.php?data=${isDynamic}&id=${dialogId}&markdown=${encodeURIComponent(markdownFields)}`);
const res = await fetch(`/api/query.php?data=${isDynamic}&id=${dialogId}&markdown=${encodeURIComponent(markdownFields)}`);
const [data] = await res.json();
const firstField = markdownFields.split(",")[0]?.trim();
const html = data?.[`${firstField}_html`] || "<p>No notes available.</p>";