snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit 8a392233d22dbcdde794f1a88dcdf812385b4380
parent 339fe5edc52e90e6a0744c7b96eea5f2071ae39b
Author: default <nobody@localhost>
Date:   Tue,  4 Jul 2023 15:02:04 +0200

The content warning check and description is propagated from the replied message.

Diffstat:
Mhtml.c | 15++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/html.c b/html.c @@ -686,7 +686,7 @@ xs_str *html_entry_controls(snac *snac, xs_str *os, const xs_dict *msg, const ch const char *prev_src1 = xs_dict_get(msg, "sourceContent"); - if (!xs_is_null(prev_src1) && strcmp(actor, snac->actor) == 0) { + if (!xs_is_null(prev_src1) && strcmp(actor, snac->actor) == 0) { /** edit **/ xs *prev_src = xs_replace(prev_src1, "<", "&lt;"); const xs_val *sensitive = xs_dict_get(msg, "sensitive"); const char *summary = xs_dict_get(msg, "summary"); @@ -724,7 +724,7 @@ xs_str *html_entry_controls(snac *snac, xs_str *os, const xs_dict *msg, const ch L("Sensitive content"), xs_type(sensitive) == XSTYPE_TRUE ? "checked" : "", L("Sensitive content description"), - summary, + xs_is_null(summary) ? "" : summary, L("Only for mentioned people"), L("Attach..."), L("File"), @@ -736,10 +736,13 @@ xs_str *html_entry_controls(snac *snac, xs_str *os, const xs_dict *msg, const ch s = xs_str_cat(s, s1); } - { + { /** reply **/ /* the post textarea */ xs *ct = build_mentions(snac, msg); + const xs_val *sensitive = xs_dict_get(msg, "sensitive"); + const char *summary = xs_dict_get(msg, "summary"); + xs *s1 = xs_fmt( "<p><details><summary>%s</summary>\n" "<p><div class=\"snac-note\" id=\"%s_reply\">\n" @@ -749,8 +752,8 @@ xs_str *html_entry_controls(snac *snac, xs_str *os, const xs_dict *msg, const ch "rows=\"4\" wrap=\"virtual\" required=\"required\">%s</textarea>\n" "<input type=\"hidden\" name=\"in_reply_to\" value=\"%s\">\n" - "<p>%s: <input type=\"checkbox\" name=\"sensitive\"> " - "<input type=\"text\" name=\"summary\" placeholder=\"%s\">\n" + "<p>%s: <input type=\"checkbox\" name=\"sensitive\" %s> " + "<input type=\"text\" name=\"summary\" placeholder=\"%s\" value=\"%s\">\n" "<p>%s: <input type=\"checkbox\" name=\"mentioned_only\">\n" "<details><summary>%s</summary>\n" @@ -770,7 +773,9 @@ xs_str *html_entry_controls(snac *snac, xs_str *os, const xs_dict *msg, const ch ct, id, L("Sensitive content"), + xs_type(sensitive) == XSTYPE_TRUE ? "checked" : "", L("Sensitive content description"), + xs_is_null(summary) ? "" : summary, L("Only for mentioned people"), L("Attach..."), L("File"),