summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-11-27 21:28:27 +0100
committerdefault <nobody@localhost>2023-11-27 21:28:27 +0100
commit2111886448db2e5685c95156f9045916e33e9400 (patch)
treecb685271fe4d233640c50a0ef4bec539d57894ee
parent800bb0123df6abb20e5b06f739ba3917ba3a0b86 (diff)
Some html_entry() refactoring.
-rw-r--r--html.c32
1 files changed, 22 insertions, 10 deletions
diff --git a/html.c b/html.c
index 3fbf545..d6b14a4 100644
--- a/html.c
+++ b/html.c
@@ -1298,23 +1298,32 @@ xs_str *html_entry(snac *user, xs_str *os, const xs_dict *msg, int local,
else
s = xs_str_cat(s, "<div class=\"snac-child\">\n"); /** **/
- s = xs_str_cat(s, "<div class=\"snac-post-header\">\n<div class=\"snac-score\">"); /** **/
+ s = xs_str_cat(s, "<div class=\"snac-post-header\">\n"); /** **/
+
+ xs_html *score = xs_html_tag("div",
+ xs_html_attr("class", "snac-score"));
if (user && is_pinned(user, id)) {
/* add a pin emoji */
- xs *f = xs_fmt("<span title=\"%s\"> &#128204; </span>", L("Pinned"));
- s = xs_str_cat(s, f);
+ xs_html_add(score,
+ xs_html_tag("span",
+ xs_html_attr("title", L("Pinned")),
+ xs_html_raw(" &#128204; ")));
}
if (strcmp(type, "Question") == 0) {
/* add the ballot box emoji */
- xs *f = xs_fmt("<span title=\"%s\"> &#128499; </span>", L("Poll"));
- s = xs_str_cat(s, f);
+ xs_html_add(score,
+ xs_html_tag("span",
+ xs_html_attr("title", L("Poll")),
+ xs_html_raw(" &#128499; ")));
if (user && was_question_voted(user, id)) {
/* add a check to show this poll was voted */
- xs *f2 = xs_fmt("<span title=\"%s\"> &#10003; </span>", L("Voted"));
- s = xs_str_cat(s, f2);
+ xs_html_add(score,
+ xs_html_tag("span",
+ xs_html_attr("title", L("Voted")),
+ xs_html_raw(" &#10003; ")));
}
}
@@ -1324,13 +1333,16 @@ xs_str *html_entry(snac *user, xs_str *os, const xs_dict *msg, int local,
int n_boosts = object_announces_len(id);
/* alternate emojis: %d &#128077; %d &#128257; */
-
xs *s1 = xs_fmt("%d &#9733; %d &#8634;\n", n_likes, n_boosts);
- s = xs_str_cat(s, s1);
+ xs_html_add(score,
+ xs_html_raw(s1));
}
- s = xs_str_cat(s, "</div>\n");
+ {
+ xs *s1 = xs_html_render(score);
+ s = xs_str_cat(s, s1);
+ }
if (boosts == NULL)
boosts = object_announces(id);