snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit 8e1a2c5ff92d01789e02980f2e36c8808c8ea033
parent 2b28fe814271eaa0b4a29457b364abd446d728c2
Author: Alexandre Oliva <oliva@gnu.org>
Date:   Thu,  6 Feb 2025 09:04:36 +0100

Merged 53ad5cdf0371fc068fa03bf287fc94be.

Diffstat:
MRELEASE_NOTES.md | 2++
Mdoc/snac.8 | 2++
Mhtml.c | 2+-
Mhttpd.c | 2+-
Mutils.c | 1+
5 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md @@ -12,6 +12,8 @@ Fixed link detection in posts (contributed by inz). Allow multiple editors for command-line posts (contributed by inz). +Separated maximum and default timeline entry count, allowing larger timelines to be requested without having to increase the default (contributed by lxo). + Special thanks to fellow developer inz for bringing my attention to code places where I should have been more careful. ## 2.71 diff --git a/doc/snac.8 b/doc/snac.8 @@ -154,6 +154,8 @@ to those servers that went timeout in the previous retry. If you want to give slow servers a chance to receive your messages, you can increase this value (but also take into account that processing the queue will take longer while waiting for these molasses to respond). +.It Ic def_timeline_entries +This is the default timeline entries shown in the web interface. .It Ic max_timeline_entries This is the maximum timeline entries shown in the web interface. .It Ic timeline_purge_days diff --git a/html.c b/html.c @@ -3306,7 +3306,7 @@ int html_get_handler(const xs_dict *req, const char *q_path, cache = 0; int skip = 0; - int def_show = xs_number_get(xs_dict_get(srv_config, "max_timeline_entries")); + int def_show = xs_number_get(xs_dict_get_def(srv_config, "def_timeline_entries", "50")); int show = def_show; if ((v = xs_dict_get(q_vars, "skip")) != NULL) diff --git a/httpd.c b/httpd.c @@ -219,7 +219,7 @@ int server_get_handler(xs_dict *req, const char *q_path, if (xs_type(q_vars) == XSTYPE_DICT && (t = xs_dict_get(q_vars, "t"))) { /** search by tag **/ int skip = 0; - int show = xs_number_get(xs_dict_get(srv_config, "max_timeline_entries")); + int show = xs_number_get(xs_dict_get_def(srv_config, "def_timeline_entries", "50")); const char *v; if ((v = xs_dict_get(q_vars, "skip")) != NULL) diff --git a/utils.c b/utils.c @@ -28,6 +28,7 @@ static const char *default_srv_config = "{" "\"queue_timeout\": 6," "\"queue_timeout_2\": 8," "\"cssurls\": [\"\"]," + "\"def_timeline_entries\": 50," "\"max_timeline_entries\": 50," "\"timeline_purge_days\": 120," "\"local_purge_days\": 0,"