commit c4bb189d99d5134ae11d79e5d5706d488a80ef41
parent 8d7f3290079be47e6da03f03c66c05cf43e8bcf1
Author: default <nobody@localhost>
Date: Thu, 13 Jul 2023 22:10:29 +0200
Added support for lemmy-style "Link" attachments.
Diffstat:
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/html.c b/html.c
@@ -1155,7 +1155,10 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local,
s = xs_str_cat(s, "<p class=\"snac-content-attachments\">\n");
while (xs_list_iter(&attach, &v)) {
- char *t = xs_dict_get(v, "mediaType");
+ const char *t = xs_dict_get(v, "mediaType");
+
+ if (xs_is_null(t))
+ t = xs_dict_get(v, "type");
if (xs_is_null(t))
continue;
@@ -1210,6 +1213,16 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local,
s = xs_str_cat(s, s1);
}
}
+ else
+ if (strcmp(t, "Link") == 0) {
+ const char *url = xs_dict_get(v, "href");
+
+ if (!xs_is_null(url)) {
+ xs *es1 = encode_html(url);
+ xs *s1 = xs_fmt("<p><a href=\"%s\">%s</p>", url, es1);
+ s = xs_str_cat(s, s1);
+ }
+ }
else {
char *url = xs_dict_get(v, "url");
char *name = xs_dict_get(v, "name");