summaryrefslogtreecommitdiff
path: root/html.c
diff options
context:
space:
mode:
authorGravatar default2024-02-10 09:08:09 +0100
committerGravatar default2024-02-10 09:08:09 +0100
commit0930ce726fa5750eed4f1f53627428dab0944f1a (patch)
tree108b4d8b29f20b418c289777e81fbde5a2821477 /html.c
parentmastoapi: Skip non-public posts from timelines by tag. (diff)
downloadsnac2-0930ce726fa5750eed4f1f53627428dab0944f1a.tar.gz
snac2-0930ce726fa5750eed4f1f53627428dab0944f1a.tar.xz
snac2-0930ce726fa5750eed4f1f53627428dab0944f1a.zip
New function is_msg_from_private_user().
Diffstat (limited to 'html.c')
-rw-r--r--html.c21
1 files changed, 3 insertions, 18 deletions
diff --git a/html.c b/html.c
index 5f3dead..a340a96 100644
--- a/html.c
+++ b/html.c
@@ -1911,24 +1911,9 @@ xs_str *html_timeline(snac *user, const xs_list *list, int local,
1911 if (!valid_status(status)) 1911 if (!valid_status(status))
1912 continue; 1912 continue;
1913 1913
1914 /* if it's an instance page, discard private users */ 1914 /* if it's an instance page, discard messages from private users */
1915 if (user == NULL && xs_startswith(xs_dict_get(msg, "id"), srv_baseurl)) { 1915 if (user == NULL && is_msg_from_private_user(msg))
1916 const char *atto = get_atto(msg); 1916 continue;
1917 xs *l = xs_split(atto, "/");
1918 const char *uid = xs_list_get(l, -1);
1919 snac user;
1920 int skip = 1;
1921
1922 if (uid && user_open(&user, uid)) {
1923 if (xs_type(xs_dict_get(user.config, "private")) != XSTYPE_TRUE)
1924 skip = 0;
1925
1926 user_free(&user);
1927 }
1928
1929 if (skip)
1930 continue;
1931 }
1932 1917
1933 xs_html *entry = html_entry(user, msg, local, 0, v, user ? 0 : 1); 1918 xs_html *entry = html_entry(user, msg, local, 0, v, user ? 0 : 1);
1934 1919