diff --git a/html.c b/html.c index bdf0bbe..9c71453 100644 --- a/html.c +++ b/html.c @@ -371,6 +371,17 @@ d_char *html_top_controls(snac *snac, d_char *s) } +d_char *html_button(d_char *s, char *clss, char *label) +{ + xs *s1 = xs_fmt( + "\n", + clss, label); + + return xs_str_cat(s, s1); +} + + d_char *html_entry_controls(snac *snac, d_char *os, char *msg) { char *id = xs_dict_get(msg, "id"); @@ -410,63 +421,30 @@ d_char *html_entry_controls(snac *snac, d_char *os, char *msg) l = xs_dict_get(meta, "liked_by"); if (xs_list_in(l, snac->actor) == -1) { /* not already liked; add button */ - xs *s1 = xs_fmt( - "\n", - L("Like") - ); - - s = xs_str_cat(s, s1); + s = html_button(s, "like", L("Like")); } l = xs_dict_get(meta, "announced_by"); if (xs_list_in(l, snac->actor) == -1) { /* not already boosted; add button */ - xs *s1 = xs_fmt( - "\n", - L("Boost") - ); - - s = xs_str_cat(s, s1); + s = html_button(s, "boost", L("Boost")); } if (following_check(snac, actor)) { - xs *s1 = xs_fmt( - "\n", - L("Unfollow") - ); - - s = xs_str_cat(s, s1); + s = html_button(s, "unfollow", L("Unfollow")); } else { - xs *s1 = xs_fmt( - "\n" - "\n", - L("Follow"), - L("MUTE") - ); - - s = xs_str_cat(s, s1); + s = html_button(s, "follow", L("Follow")); + s = html_button(s, "mute", L("MUTE")); } } - { - xs *s1 = xs_fmt( - "\n", - L("Delete") - ); - - s = xs_str_cat(s, s1); - } + s = html_button(s, "delete", L("Delete")); s = xs_str_cat(s, "\n"); { + /* the post textarea */ xs *ct = xs_str_new(""); xs *s1 = xs_fmt(