summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar default2023-07-13 22:10:29 +0200
committerGravatar default2023-07-13 22:10:29 +0200
commitc4bb189d99d5134ae11d79e5d5706d488a80ef41 (patch)
tree20c014b690a174a7845541eb354e612767dbec8f
parentUpdated RELEASE_NOTES. (diff)
downloadsnac2-c4bb189d99d5134ae11d79e5d5706d488a80ef41.tar.gz
snac2-c4bb189d99d5134ae11d79e5d5706d488a80ef41.tar.xz
snac2-c4bb189d99d5134ae11d79e5d5706d488a80ef41.zip
Added support for lemmy-style "Link" attachments.
-rw-r--r--html.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/html.c b/html.c
index d74c44d..71d6e5b 100644
--- 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,
1155 s = xs_str_cat(s, "<p class=\"snac-content-attachments\">\n"); 1155 s = xs_str_cat(s, "<p class=\"snac-content-attachments\">\n");
1156 1156
1157 while (xs_list_iter(&attach, &v)) { 1157 while (xs_list_iter(&attach, &v)) {
1158 char *t = xs_dict_get(v, "mediaType"); 1158 const char *t = xs_dict_get(v, "mediaType");
1159
1160 if (xs_is_null(t))
1161 t = xs_dict_get(v, "type");
1159 1162
1160 if (xs_is_null(t)) 1163 if (xs_is_null(t))
1161 continue; 1164 continue;
@@ -1210,6 +1213,16 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local,
1210 s = xs_str_cat(s, s1); 1213 s = xs_str_cat(s, s1);
1211 } 1214 }
1212 } 1215 }
1216 else
1217 if (strcmp(t, "Link") == 0) {
1218 const char *url = xs_dict_get(v, "href");
1219
1220 if (!xs_is_null(url)) {
1221 xs *es1 = encode_html(url);
1222 xs *s1 = xs_fmt("<p><a href=\"%s\">%s</p>", url, es1);
1223 s = xs_str_cat(s, s1);
1224 }
1225 }
1213 else { 1226 else {
1214 char *url = xs_dict_get(v, "url"); 1227 char *url = xs_dict_get(v, "url");
1215 char *name = xs_dict_get(v, "name"); 1228 char *name = xs_dict_get(v, "name");