mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-03-24 13:20:56 +01:00
Merge remote-tracking branch 'origin/develop' into activitypub
This commit is contained in:
@@ -238,6 +238,12 @@ program
|
||||
.action(() => {
|
||||
require('./manage').info();
|
||||
});
|
||||
program
|
||||
.command('maintenance <toggle>')
|
||||
.description('Toggle maintenance mode true/false')
|
||||
.action((toggle) => {
|
||||
require('./manage').maintenance(toggle);
|
||||
});
|
||||
|
||||
// reset
|
||||
const resetCommand = program.command('reset');
|
||||
|
||||
@@ -191,6 +191,14 @@ async function info() {
|
||||
process.exit();
|
||||
}
|
||||
|
||||
async function maintenance(toggle) {
|
||||
const turnOnMaintenance = toggle === 'true';
|
||||
await db.init();
|
||||
await db.setObjectField('config', 'maintenanceMode', turnOnMaintenance ? 1 : 0);
|
||||
console.log(`Maintenance mode turned ${turnOnMaintenance ? 'on' : 'off'}`);
|
||||
process.exit();
|
||||
}
|
||||
|
||||
async function buildWrapper(targets, options) {
|
||||
try {
|
||||
await build.build(targets, options);
|
||||
@@ -207,3 +215,4 @@ exports.activate = activate;
|
||||
exports.listPlugins = listPlugins;
|
||||
exports.listEvents = listEvents;
|
||||
exports.info = info;
|
||||
exports.maintenance = maintenance;
|
||||
|
||||
@@ -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`;
|
||||
|
||||
@@ -20,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;
|
||||
@@ -70,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';
|
||||
|
||||
@@ -106,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