commit 61d399a3682c4e4c488d3a2ae806cde372199280
parent 0da936901283db8c5de5b6470ffd911ac8b300fe
Author: default <nobody@localhost>
Date: Wed, 5 Feb 2025 10:52:14 +0100
Merge branch 'master' of grunfink-codeberg:grunfink/snac2
Diffstat:
3 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/doc/snac.8 b/doc/snac.8
@@ -205,6 +205,8 @@ The email address of the instance administrator (optional).
The user name of the instance administrator (optional).
.It Ic short_description
A textual short description about the instance (optional).
+.It Ic short_description_raw
+Whether to interpret short_descript as raw string or convert to HTML (optional).
.It Ic fastcgi
If set to true,
.Nm
diff --git a/html.c b/html.c
@@ -553,10 +553,11 @@ xs_html *html_instance_head(void)
static xs_html *html_instance_body(void)
{
- const char *host = xs_dict_get(srv_config, "host");
- const char *sdesc = xs_dict_get(srv_config, "short_description");
- const char *email = xs_dict_get(srv_config, "admin_email");
- const char *acct = xs_dict_get(srv_config, "admin_account");
+ const char *host = xs_dict_get(srv_config, "host");
+ const char *sdesc = xs_dict_get(srv_config, "short_description");
+ const char *sdescraw = xs_dict_get(srv_config, "short_description_raw");
+ const char *email = xs_dict_get(srv_config, "admin_email");
+ const char *acct = xs_dict_get(srv_config, "admin_account");
xs *blurb = xs_replace(snac_blurb, "%host%", host);
@@ -569,12 +570,21 @@ static xs_html *html_instance_body(void)
dl = xs_html_tag("dl", NULL)));
if (sdesc && *sdesc) {
- xs_html_add(dl,
- xs_html_tag("di",
- xs_html_tag("dt",
- xs_html_text(L("Site description"))),
- xs_html_tag("dd",
- xs_html_text(sdesc))));
+ if (!xs_is_null(sdescraw) && xs_type(sdescraw) == XSTYPE_TRUE) {
+ xs_html_add(dl,
+ xs_html_tag("di",
+ xs_html_tag("dt",
+ xs_html_text(L("Site description"))),
+ xs_html_tag("dd",
+ xs_html_raw(sdesc))));
+ } else {
+ xs_html_add(dl,
+ xs_html_tag("di",
+ xs_html_tag("dt",
+ xs_html_text(L("Site description"))),
+ xs_html_tag("dd",
+ xs_html_text(sdesc))));
+ }
}
if (email && *email) {
xs *mailto = xs_fmt("mailto:%s", email);
diff --git a/utils.c b/utils.c
@@ -36,6 +36,7 @@ static const char *default_srv_config = "{"
"\"admin_account\": \"\","
"\"title\": \"\","
"\"short_description\": \"\","
+ "\"short_description_raw\": false,"
"\"protocol\": \"https\","
"\"fastcgi\": false"
"}";