aboutsummaryrefslogtreecommitdiff
path: root/src/Routes/Settings.c
diff options
context:
space:
mode:
authorfrosty <gabriel@bwaaa.monster>2026-03-30 10:37:46 +0300
committerfrosty <gabriel@bwaaa.monster>2026-03-30 10:37:46 +0300
commitc3ed9017385342944badec46de263560c6ab07c8 (patch)
treed7f7e86e26ebffd9f277fc340b74a1681eb707d7 /src/Routes/Settings.c
parent9e6e76306471b3cc139ae68c0363ec95616d1b23 (diff)
downloadomnisearch-c3ed9017385342944badec46de263560c6ab07c8.tar.gz
feat: begin adding settings menu, move theme to settings
Diffstat (limited to 'src/Routes/Settings.c')
-rw-r--r--src/Routes/Settings.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/Routes/Settings.c b/src/Routes/Settings.c
new file mode 100644
index 0000000..05edc56
--- /dev/null
+++ b/src/Routes/Settings.c
@@ -0,0 +1,30 @@
+#include "Settings.h"
+#include "../Utility/Utility.h"
+#include <stdlib.h>
+#include <string.h>
+
+int settings_handler(UrlParams *params) {
+ const char *query = "";
+ if (params) {
+ for (int i = 0; i < params->count; i++) {
+ if (strcmp(params->params[i].key, "q") == 0) {
+ query = params->params[i].value;
+ break;
+ }
+ }
+ }
+
+ char *theme = get_theme("system");
+
+ TemplateContext ctx = new_context();
+ context_set(&ctx, "query", query);
+ context_set(&ctx, "theme", theme);
+ char *rendered_html = render_template("settings.html", &ctx);
+ send_response(rendered_html);
+
+ free(rendered_html);
+ free(theme);
+ free_context(&ctx);
+
+ return 0;
+}