From 063d270f1aba5457b3c1139afffd2ee449a47f0a Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 3 Sep 2014 12:49:34 -0400 Subject: [PATCH] introducing "sort" querystring parameter in topic route, so that sorting can be overridden via query string. --- src/controllers/topics.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/controllers/topics.js b/src/controllers/topics.js index e482efd412..bfc2b4e396 100644 --- a/src/controllers/topics.js +++ b/src/controllers/topics.js @@ -16,6 +16,7 @@ var topicsController = {}, topicsController.get = function(req, res, next) { var tid = req.params.topic_id, page = req.query.page || 1, + sort = req.query.sort, uid = req.user ? req.user.uid : 0, userPrivileges; @@ -45,7 +46,15 @@ topicsController.get = function(req, res, next) { var set = 'tid:' + tid + ':posts', reverse = false; - if (settings.topicPostSort === 'newest_to_oldest') { + // `sort` qs has priority over user setting + if (sort === 'oldest_to_newest') { + reverse = false; + } else if (sort === 'newest_to_oldest') { + reverse = true; + } else if (sort === 'most_votes') { + reverse = true; + set = 'tid:' + tid + ':posts:votes'; + } else if (settings.topicPostSort === 'newest_to_oldest') { reverse = true; } else if (settings.topicPostSort === 'most_votes') { reverse = true;