From 5956e421952721dfea0eff838f74a5d4f13b5e94 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Fri, 11 Jun 2021 16:09:27 -0400 Subject: Generalize index.{atom,html} to search pages --- html.c | 43 +++++++++++++++++++++++++++++++------------ 1 file changed, 31 insertions(+), 12 deletions(-) (limited to 'html.c') diff --git a/html.c b/html.c index f8f8539..5eb2f29 100644 --- a/html.c +++ b/html.c @@ -512,31 +512,46 @@ int htmlThreadClose(FILE *file) { || htmlFooter(file); } -int htmlIndexHead(FILE *file) { +static char *htmlSearchURL(const char *name, const char *type) { + struct Variable vars[] = { + { "name", name }, + { "type", type }, + {0}, + }; + return templateString(PATH_SEARCH, vars, escapeURL); +} + +int htmlSearchHead(FILE *file, const char *name) { + char *atom = htmlSearchURL(name, "atom"); const char *template = Q( - [title] - + [+name][name] - [-][title] + ); struct Variable vars[] = { { "generator", GENERATOR_URL }, + { "name", (strcmp(name, "index") ? name : NULL) }, { "title", baseTitle }, + { "atom", atom }, {0}, }; - return 0 + int error = 0 || templateRender(file, template, vars, escapeXML) || htmlStylesheet(file); + free(atom); + return error; } -int htmlIndexOpen(FILE *file) { +int htmlSearchOpen(FILE *file, const char *name) { + char *atom = htmlSearchURL(name, "atom"); const char *template = Q(
-

[title]

+

[+name][name] - [-][title]