commit a6da1fd
default
·
2023-11-29 08:49:48 +0000 UTC
parent 593475f
History in html_timeline() uses xs_html.
1 files changed,
+18,
-14
M
html.c
M
html.c
+18,
-14
1@@ -2124,28 +2124,32 @@ xs_str *html_timeline(snac *user, const xs_list *list, int local,
2 s = xs_str_cat(s, "<!-- history disabled -->\n");
3 }
4 else {
5- xs *s1 = xs_fmt(
6- "<div class=\"snac-history\">\n"
7- "<p class=\"snac-history-title\">%s</p><ul>\n",
8- L("History")
9- );
10+ xs_html *ul = xs_html_tag("ul", NULL);
11
12- s = xs_str_cat(s, s1);
13+ xs_html *history = xs_html_tag("div",
14+ xs_html_attr("class", "snac-history"),
15+ xs_html_tag("p",
16+ xs_html_attr("class", "snac-history-title"),
17+ xs_html_text(L("History"))),
18+ ul);
19
20 xs *list = history_list(user);
21- char *p, *v;
22+ xs_list *p = list;
23+ char *v;
24
25- p = list;
26 while (xs_list_iter(&p, &v)) {
27- xs *fn = xs_replace(v, ".html", "");
28- xs *s1 = xs_fmt(
29- "<li><a href=\"%s/h/%s\">%s</a></li>\n",
30- user->actor, v, fn);
31+ xs *fn = xs_replace(v, ".html", "");
32+ xs *url = xs_fmt("%s/h/%s", user->actor, v);
33
34- s = xs_str_cat(s, s1);
35+ xs_html_add(ul,
36+ xs_html_tag("li",
37+ xs_html_tag("a",
38+ xs_html_attr("href", url),
39+ xs_html_text(fn))));
40 }
41
42- s = xs_str_cat(s, "</ul></div>\n");
43+ xs *s1 = xs_html_render(history);
44+ s = xs_str_cat(s, s1);
45 }
46 }
47