|
@@ -3314,21 +3314,17 @@ int html_get_handler(const xs_dict *req, const char *q_path,
|
|
|
}
|
|
|
else {
|
|
|
xs *list = NULL;
|
|
|
- xs *next = NULL;
|
|
|
+ int more = 0;
|
|
|
|
|
|
- if (xs_is_true(xs_dict_get(srv_config, "strict_public_timelines"))) {
|
|
|
- list = timeline_simple_list(&snac, "public", skip, show);
|
|
|
- next = timeline_simple_list(&snac, "public", skip + show, 1);
|
|
|
- }
|
|
|
- else {
|
|
|
- list = timeline_list(&snac, "public", skip, show);
|
|
|
- next = timeline_list(&snac, "public", skip + show, 1);
|
|
|
- }
|
|
|
+ if (xs_is_true(xs_dict_get(srv_config, "strict_public_timelines")))
|
|
|
+ list = timeline_simple_list(&snac, "public", skip, show, &more);
|
|
|
+ else
|
|
|
+ list = timeline_list(&snac, "public", skip, show, &more);
|
|
|
|
|
|
xs *pins = pinned_list(&snac);
|
|
|
pins = xs_list_cat(pins, list);
|
|
|
|
|
|
- *body = html_timeline(&snac, pins, 1, skip, show, xs_list_len(next), NULL, "", 1, error);
|
|
|
+ *body = html_timeline(&snac, pins, 1, skip, show, more, NULL, "", 1, error);
|
|
|
|
|
|
*b_size = strlen(*body);
|
|
|
status = HTTP_STATUS_OK;
|
|
@@ -3490,13 +3486,14 @@ int html_get_handler(const xs_dict *req, const char *q_path,
|
|
|
xs_dict_get(req, "if-none-match"), etag);
|
|
|
}
|
|
|
else {
|
|
|
+ int more = 0;
|
|
|
+
|
|
|
snac_debug(&snac, 1, xs_fmt("building timeline"));
|
|
|
|
|
|
- xs *list = timeline_list(&snac, "private", skip, show);
|
|
|
- xs *next = timeline_list(&snac, "private", skip + show, 1);
|
|
|
+ xs *list = timeline_list(&snac, "private", skip, show, &more);
|
|
|
|
|
|
*body = html_timeline(&snac, list, 0, skip, show,
|
|
|
- xs_list_len(next), NULL, "/admin", 1, error);
|
|
|
+ more, NULL, "/admin", 1, error);
|
|
|
|
|
|
*b_size = strlen(*body);
|
|
|
status = HTTP_STATUS_OK;
|
|
@@ -3702,7 +3699,7 @@ int html_get_handler(const xs_dict *req, const char *q_path,
|
|
|
|
|
|
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 *elems = timeline_simple_list(&snac, "public", 0, cnt, NULL);
|
|
|
xs *bio = xs_dup(xs_dict_get(snac.config, "bio"));
|
|
|
|
|
|
xs *rss_title = xs_fmt("%s (@%s@%s)",
|