Returns empty anchors for hidden posts or muted actors.

This will help keeping the previous position after 'Hide' or 'MUTE'.
This commit is contained in:
default 2024-03-07 09:29:01 +01:00
parent f28e520322
commit 7fe866d60d

20
html.c
View file

@ -1324,8 +1324,14 @@ xs_html *html_entry(snac *user, xs_dict *msg, int read_only,
return NULL; return NULL;
/* hidden? do nothing more for this conversation */ /* hidden? do nothing more for this conversation */
if (user && is_hidden(user, id)) if (user && is_hidden(user, id)) {
return NULL; xs *s1 = xs_fmt("%s_entry", md5);
/* return just an dummy anchor, to keep position after hitting 'Hide' */
return xs_html_tag("div",
xs_html_tag("a",
xs_html_attr("name", s1)));
}
/* avoid too deep nesting, as it may be a loop */ /* avoid too deep nesting, as it may be a loop */
if (level >= 256) if (level >= 256)
@ -1356,8 +1362,14 @@ xs_html *html_entry(snac *user, xs_dict *msg, int read_only,
return NULL; return NULL;
/* ignore muted morons immediately */ /* ignore muted morons immediately */
if (user && is_muted(user, actor)) if (user && is_muted(user, actor)) {
return NULL; xs *s1 = xs_fmt("%s_entry", md5);
/* return just an dummy anchor, to keep position after hitting 'MUTE' */
return xs_html_tag("div",
xs_html_tag("a",
xs_html_attr("name", s1)));
}
if ((user == NULL || strcmp(actor, user->actor) != 0) if ((user == NULL || strcmp(actor, user->actor) != 0)
&& !valid_status(actor_get(actor, NULL))) && !valid_status(actor_get(actor, NULL)))