diff options
author | default <nobody@localhost> | 2023-07-13 22:10:29 +0200 |
---|---|---|
committer | default <nobody@localhost> | 2023-07-13 22:10:29 +0200 |
commit | c4bb189d99d5134ae11d79e5d5706d488a80ef41 (patch) | |
tree | 20c014b690a174a7845541eb354e612767dbec8f /html.c | |
parent | 8d7f3290079be47e6da03f03c66c05cf43e8bcf1 (diff) |
Added support for lemmy-style "Link" attachments.
Diffstat (limited to 'html.c')
-rw-r--r-- | html.c | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -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"); |