mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-04-14 00:18:03 +02:00
make current sort option visible on button
This commit is contained in:
4
public/language/en-GB/aria.json
Normal file
4
public/language/en-GB/aria.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"post-sort-option": "Post sort option, %1",
|
||||
"topic-sort-option": "Topic sort option, %1"
|
||||
}
|
||||
@@ -20,6 +20,7 @@ const categoryController = module.exports;
|
||||
|
||||
const url = nconf.get('url');
|
||||
const relative_path = nconf.get('relative_path');
|
||||
const validSorts = ['newest_to_oldest', 'oldest_to_newest', 'most_posts', 'most_votes', 'most_views'];
|
||||
|
||||
categoryController.get = async function (req, res, next) {
|
||||
const cid = req.params.category_id;
|
||||
@@ -72,12 +73,14 @@ categoryController.get = async function (req, res, next) {
|
||||
const start = ((currentPage - 1) * userSettings.topicsPerPage) + topicIndex;
|
||||
const stop = start + userSettings.topicsPerPage - 1;
|
||||
|
||||
const sort = validSorts.includes(req.query.sort) ? req.query.sort : userSettings.categoryTopicSort;
|
||||
|
||||
const categoryData = await categories.getCategoryById({
|
||||
uid: req.uid,
|
||||
cid: cid,
|
||||
start: start,
|
||||
stop: stop,
|
||||
sort: req.query.sort || userSettings.categoryTopicSort,
|
||||
sort: sort,
|
||||
settings: userSettings,
|
||||
query: req.query,
|
||||
tag: req.query.tag,
|
||||
@@ -129,6 +132,7 @@ categoryController.get = async function (req, res, next) {
|
||||
categoryData.topicIndex = topicIndex;
|
||||
categoryData.selectedTag = tagData.selectedTag;
|
||||
categoryData.selectedTags = tagData.selectedTags;
|
||||
categoryData.sortOptionLabel = `[[topic:${validator.escape(String(sort)).replace(/_/g, '-')}]]`;
|
||||
|
||||
if (!meta.config['feeds:disableRSS']) {
|
||||
categoryData.rssFeedUrl = `${url}/category/${categoryData.cid}.rss`;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
const nconf = require('nconf');
|
||||
const qs = require('querystring');
|
||||
const validator = require('validator');
|
||||
|
||||
const user = require('../user');
|
||||
const meta = require('../meta');
|
||||
@@ -19,6 +20,7 @@ const topicsController = module.exports;
|
||||
const url = nconf.get('url');
|
||||
const relative_path = nconf.get('relative_path');
|
||||
const upload_url = nconf.get('upload_url');
|
||||
const validSorts = ['oldest_to_newest', 'newest_to_oldest', 'most_votes'];
|
||||
|
||||
topicsController.get = async function getTopic(req, res, next) {
|
||||
const tid = req.params.topic_id;
|
||||
@@ -69,7 +71,7 @@ topicsController.get = async function getTopic(req, res, next) {
|
||||
return helpers.redirect(res, `/topic/${tid}/${req.params.slug}${postIndex > topicData.postcount ? `/${topicData.postcount}` : ''}${generateQueryString(req.query)}`);
|
||||
}
|
||||
postIndex = Math.max(1, postIndex);
|
||||
const sort = req.query.sort || settings.topicPostSort;
|
||||
const sort = validSorts.includes(req.query.sort) ? req.query.sort : settings.topicPostSort;
|
||||
const set = sort === 'most_votes' ? `tid:${tid}:posts:votes` : `tid:${tid}:posts`;
|
||||
const reverse = sort === 'newest_to_oldest' || sort === 'most_votes';
|
||||
|
||||
@@ -105,6 +107,7 @@ topicsController.get = async function getTopic(req, res, next) {
|
||||
topicData.allowMultipleBadges = meta.config.allowMultipleBadges === 1;
|
||||
topicData.privateUploads = meta.config.privateUploads === 1;
|
||||
topicData.showPostPreviewsOnHover = meta.config.showPostPreviewsOnHover === 1;
|
||||
topicData.sortOptionLabel = `[[topic:${validator.escape(String(sort)).replace(/_/g, '-')}]]`;
|
||||
if (!meta.config['feeds:disableRSS']) {
|
||||
topicData.rssFeedUrl = `${relative_path}/topic/${topicData.tid}.rss`;
|
||||
if (req.loggedIn) {
|
||||
|
||||
Reference in New Issue
Block a user