snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit 4ab22b2c14cd0a94b05488d247b5669922415f5e
parent 64d3bb7e33485bf4fafed7108422378ac98aabf1
Author: default <nobody@localhost>
Date:   Thu, 13 Jul 2023 23:41:22 +0200

If a Page has an image, show it as an attachment.

Diffstat:
Mhtml.c | 26+++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)

diff --git a/html.c b/html.c @@ -1146,9 +1146,10 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local, s = xs_str_cat(s, "\n"); /* add the attachments */ - char *attach; + xs_list *attach = xs_dict_get(msg, "attachment"); + xs_dict *image = xs_dict_get(msg, "image"); - if ((attach = xs_dict_get(msg, "attachment")) != NULL) { /** **/ + if (!xs_is_null(attach) || !xs_is_null(image)) { /** **/ char *v; /* make custom css for attachments easier */ @@ -1173,7 +1174,8 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local, xs *es1 = encode_html(name); xs *s1 = xs_fmt( - "<a href=\"%s\" target=\"_blank\"><img src=\"%s\" alt=\"%s\" title=\"%s\" loading=\"lazy\"/></a>\n", + "<a href=\"%s\" target=\"_blank\">" + "<img src=\"%s\" alt=\"%s\" title=\"%s\" loading=\"lazy\"/></a>\n", url, url, es1, es1); s = xs_str_cat(s, s1); @@ -1239,6 +1241,24 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local, } } + /* if the message has an image, add it */ + if (!xs_is_null(image)) { + if (!xs_is_null(image = xs_dict_get(image, "url"))) { + xs *es1; + if (!xs_is_null(v = xs_dict_get(msg, "name"))) + es1 = encode_html(v); + else + es1 = xs_str_new(NULL); + + xs *s1 = xs_fmt( + "<a href=\"%s\" target=\"_blank\">" + "<img src=\"%s\" alt=\"%s\" title=\"%s\" loading=\"lazy\"/></a>\n", + image, image, es1, es1); + + s = xs_str_cat(s, s1); + } + } + s = xs_str_cat(s, "</p>\n"); }