commit cac1ce0
default
·
2023-11-23 20:20:10 +0000 UTC
parent d2a5a55
html_people_list() returns an xs_html.
1 files changed,
+30,
-28
M
html.c
M
html.c
+30,
-28
1@@ -1848,19 +1848,19 @@ xs_str *html_timeline(snac *user, const xs_list *list, int local,
2 }
3
4
5-xs_str *html_people_list(snac *snac, xs_str *os, xs_list *list, const char *header, const char *t)
6+xs_html *html_people_list(snac *snac, xs_list *list, char *header, char *t)
7 {
8- xs *s = xs_str_new(NULL);
9- xs *es1 = encode_html(header);
10- xs *h = xs_fmt("<h2 class=\"snac-header\">%s</h2>\n", es1);
11- xs_list *p;
12+ xs_html *snac_posts;
13+ xs_html *people = xs_html_tag("div",
14+ xs_html_tag("h2",
15+ xs_html_attr("class", "snac-header"),
16+ xs_html_text(header)),
17+ snac_posts = xs_html_tag("div",
18+ xs_html_attr("class", "snac-posts")));
19+
20+ xs_list *p = list;
21 char *actor_id;
22
23- s = xs_str_cat(s, h);
24-
25- s = xs_str_cat(s, "<div class=\"snac-posts\">\n");
26-
27- p = list;
28 while (xs_list_iter(&p, &actor_id)) {
29 xs *md5 = xs_md5_hex(actor_id, strlen(actor_id));
30 xs *actor = NULL;
31@@ -1950,28 +1950,22 @@ xs_str *html_people_list(snac *snac, xs_str *os, xs_list *list, const char *head
32 xs *dm_div_id = xs_fmt("%s_%s_dm", md5, t);
33 xs *dm_form_id = xs_fmt("%s_reply_form", md5);
34
35- xs_html *dm_textarea = html_note(snac, "Direct Message...",
36- dm_div_id, dm_form_id,
37- "", "",
38- NULL, actor_id,
39- xs_stock_false, "",
40- xs_stock_false, NULL,
41- NULL, 0);
42-
43- xs_html_add(snac_controls, dm_textarea);
44+ xs_html_add(snac_controls,
45+ html_note(snac, L("Direct Message..."),
46+ dm_div_id, dm_form_id,
47+ "", "",
48+ NULL, actor_id,
49+ xs_stock_false, "",
50+ xs_stock_false, NULL,
51+ NULL, 0));
52
53 xs_html_add(snac_post, snac_controls);
54
55- {
56- xs *s1 = xs_html_render_s(snac_post, xs_dup("\n"));
57- s = xs_str_cat(s, s1);
58- }
59+ xs_html_add(snac_posts, snac_post);
60 }
61 }
62
63- s = xs_str_cat(s, "</div>\n");
64-
65- return xs_str_cat(os, s);
66+ return people;
67 }
68
69
70@@ -1983,9 +1977,17 @@ xs_str *html_people(snac *snac)
71
72 s = html_user_header(snac, s, 0);
73
74- s = html_people_list(snac, s, wing, L("People you follow"), "i");
75+ {
76+ xs_html *h = html_people_list(snac, wing, L("People you follow"), "i");
77+ xs *s1 = xs_html_render(h);
78+ s = xs_str_cat(s, s1);
79+ }
80
81- s = html_people_list(snac, s, wers, L("People that follow you"), "e");
82+ {
83+ xs_html *h = html_people_list(snac, wers, L("People that follow you"), "e");
84+ xs *s1 = xs_html_render(h);
85+ s = xs_str_cat(s, s1);
86+ }
87
88 s = html_footer(s);
89