diff --git a/install/data/defaults.json b/install/data/defaults.json index 090a1d4026..8d0112ba74 100644 --- a/install/data/defaults.json +++ b/install/data/defaults.json @@ -112,6 +112,7 @@ "hideFullname": 0, "hideEmail": 0, "allowGuestHandles": 0, + "recentMaxTopics": 200, "disableRecentCategoryFilter": 0, "maximumRelatedTopics": 0, "disableEmailSubscriptions": 0, diff --git a/public/language/en-GB/admin/settings/post.json b/public/language/en-GB/admin/settings/post.json index da708f4c6c..a8d0046355 100644 --- a/public/language/en-GB/admin/settings/post.json +++ b/public/language/en-GB/admin/settings/post.json @@ -42,6 +42,7 @@ "unread.cutoff": "Unread cutoff days", "unread.min-track-last": "Minimum posts in topic before tracking last read", "recent": "Recent Settings", + "recent.max-topics": "Maximum topics on /recent", "recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page", "signature": "Signature Settings", "signature.disable": "Disable signatures", diff --git a/src/topics/sorted.js b/src/topics/sorted.js index 909f0dd250..28844ffee7 100644 --- a/src/topics/sorted.js +++ b/src/topics/sorted.js @@ -26,7 +26,7 @@ module.exports = function (Topics) { } data.tids = await getTids(params); data.tids = await sortTids(data.tids, params); - data.tids = await filterTids(data.tids.slice(0, 200), params); + data.tids = await filterTids(data.tids.slice(0, meta.config.recentMaxTopics), params); data.topicCount = data.tids.length; data.topics = await getTopics(data.tids, params); data.nextStart = params.stop + 1; @@ -49,7 +49,7 @@ module.exports = function (Topics) { } else if (params.cids) { tids = await getCidTids(params); } else { - tids = await db.getSortedSetRevRange('topics:' + params.sort, 0, 199); + tids = await db.getSortedSetRevRange('topics:' + params.sort, 0, meta.config.recentMaxTopics - 1); } return tids; @@ -67,7 +67,7 @@ module.exports = function (Topics) { pinnedSets.push('cid:' + cid + ':tids:pinned'); }); const [tids, pinnedTids] = await Promise.all([ - db.getSortedSetRevRange(sets, 0, 199), + db.getSortedSetRevRange(sets, 0, meta.config.recentMaxTopics - 1), db.getSortedSetRevRange(pinnedSets, 0, -1), ]); return pinnedTids.concat(tids); diff --git a/src/views/admin/settings/post.tpl b/src/views/admin/settings/post.tpl index 5ee1dbdc6c..082cd15973 100644 --- a/src/views/admin/settings/post.tpl +++ b/src/views/admin/settings/post.tpl @@ -210,6 +210,10 @@
[[admin/settings/post:recent]]
+
+ + +