commit b3f2d15

default  ·  2023-05-17 09:37:23 +0000 UTC
parent 93d1649
Added web interface for drop_dm_from_unknown.
1 files changed,  +11, -0
M html.c
M html.c
+11, -0
 1@@ -392,6 +392,9 @@ d_char *html_top_controls(snac *snac, d_char *s)
 2         "<p>%s:<br>\n"
 3         "<input type=\"number\" name=\"purge_days\" value=\"%s\"></p>\n"
 4 
 5+        "<p><input type=\"checkbox\" name=\"drop_dm_from_unknown\" id=\"drop_dm_from_unknown\" %s>\n"
 6+        "<label for=\"drop_dm_from_unknown\">%s</label></p>\n"
 7+
 8         "<p>%s:<br>\n"
 9         "<input type=\"password\" name=\"passwd1\" value=\"\"></p>\n"
10 
11@@ -437,6 +440,8 @@ d_char *html_top_controls(snac *snac, d_char *s)
12     else
13         purge_days = "0";
14 
15+    const char *d_dm_f_u = xs_dict_get(snac->config, "drop_dm_from_unknown");
16+
17     xs *s1 = xs_fmt(_tmpl,
18         snac->actor,
19         L("Sensitive content"),
20@@ -469,6 +474,8 @@ d_char *html_top_controls(snac *snac, d_char *s)
21         telegram_chat_id,
22         L("Maximum days to keep posts (0: server settings)"),
23         purge_days,
24+        xs_type(d_dm_f_u) == XSTYPE_TRUE ? "checked" : "",
25+        L("Block direct messages from people you don't follow"),
26         L("Password (only to change it)"),
27         L("Repeat Password"),
28         L("Update user info")
29@@ -1818,6 +1825,10 @@ int html_post_handler(const xs_dict *req, const char *q_path,
30             xs *days    = xs_number_new(atof(v));
31             snac.config = xs_dict_set(snac.config, "purge_days", days);
32         }
33+        if ((v = xs_dict_get(p_vars, "drop_dm_from_unknown")) != NULL) {
34+            xs *yn = xs_val_new(v && strcmp(v, "on") == 0 ? XSTYPE_TRUE : XSTYPE_FALSE);
35+            snac.config = xs_dict_set(snac.config, "drop_dm_from_unknown", yn);
36+        }
37 
38         /* avatar upload */
39         xs_list *avatar_file = xs_dict_get(p_vars, "avatar_file");