Browse Source

New configuration directive "max_public_entries".

default 2 months ago
parent
commit
9fcff1467e
2 changed files with 6 additions and 4 deletions
  1. 3 3
      activitypub.c
  2. 3 1
      html.c

+ 3 - 3
activitypub.c

@@ -2919,12 +2919,12 @@ int activitypub_get_handler(const xs_dict *req, const char *q_path,
         xs *id = xs_fmt("%s/%s", snac.actor, p_path);
         xs *list = xs_list_new();
         const char *v;
-        int tc = 0;
+        int cnt = xs_number_get(xs_dict_get_def(srv_config, "max_public_entries", "20"));
 
         /* get the public outbox or the pinned list */
-        xs *elems = *p_path == 'o' ? timeline_simple_list(&snac, "public", 0, 20) : pinned_list(&snac);
+        xs *elems = *p_path == 'o' ? timeline_simple_list(&snac, "public", 0, cnt) : pinned_list(&snac);
 
-        while (xs_list_next(elems, &v, &tc)) {
+        xs_list_foreach(elems, v) {
             xs *i = NULL;
 
             if (valid_status(object_get_by_md5(v, &i))) {

+ 3 - 1
html.c

@@ -3423,7 +3423,9 @@ int html_get_handler(const xs_dict *req, const char *q_path,
         if (xs_type(xs_dict_get(snac.config, "private")) == XSTYPE_TRUE)
             return HTTP_STATUS_FORBIDDEN;
 
-        xs *elems = timeline_simple_list(&snac, "public", 0, 20);
+        int cnt = xs_number_get(xs_dict_get_def(srv_config, "max_public_entries", "20"));
+
+        xs *elems = timeline_simple_list(&snac, "public", 0, cnt);
         xs *bio   = xs_dup(xs_dict_get(snac.config, "bio"));
 
         xs *rss_title = xs_fmt("%s (@%s@%s)",