mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-01-01 13:20:41 +01:00
more flagged posts shenanigans
This commit is contained in:
@@ -98,4 +98,66 @@ module.exports = function(SocketPosts) {
|
||||
}
|
||||
], callback);
|
||||
};
|
||||
|
||||
SocketPosts.dismissFlag = function(socket, pid, callback) {
|
||||
if (!pid || !socket.uid) {
|
||||
return callback('[[error:invalid-data]]');
|
||||
}
|
||||
async.waterfall([
|
||||
function (next) {
|
||||
user.isAdminOrGlobalModerator(socket.uid, next);
|
||||
},
|
||||
function (isAdminOrGlobalModerator, next) {
|
||||
if (!isAdminOrGlobalModerator) {
|
||||
return next(new Error('[[no-privileges]]'));
|
||||
}
|
||||
posts.dismissFlag(pid, next);
|
||||
}
|
||||
], callback);
|
||||
};
|
||||
|
||||
SocketPosts.dismissAllFlags = function(socket, data, callback) {
|
||||
async.waterfall([
|
||||
function (next) {
|
||||
user.isAdminOrGlobalModerator(socket.uid, next);
|
||||
},
|
||||
function (isAdminOrGlobalModerator, next) {
|
||||
if (!isAdminOrGlobalModerator) {
|
||||
return next(new Error('[[no-privileges]]'));
|
||||
}
|
||||
posts.dismissAllFlags(next);
|
||||
}
|
||||
], callback);
|
||||
};
|
||||
|
||||
SocketPosts.getMoreFlags = function(socket, data, callback) {
|
||||
if (!data || !parseInt(data.after, 10)) {
|
||||
return callback('[[error:invalid-data]]');
|
||||
}
|
||||
var sortBy = data.sortBy || 'count';
|
||||
var byUsername = data.byUsername || '';
|
||||
var start = parseInt(data.after, 10);
|
||||
var stop = start + 19;
|
||||
|
||||
async.waterfall([
|
||||
function (next) {
|
||||
user.isAdminOrGlobalModerator(socket.uid, next);
|
||||
},
|
||||
function (isAdminOrGlobalModerator, next) {
|
||||
if (!isAdminOrGlobalModerator) {
|
||||
return next(new Error('[[no-privileges]]'));
|
||||
}
|
||||
|
||||
if (byUsername) {
|
||||
posts.getUserFlags(byUsername, sortBy, socket.uid, start, stop, next);
|
||||
} else {
|
||||
var set = sortBy === 'count' ? 'posts:flags:count' : 'posts:flagged';
|
||||
posts.getFlags(set, socket.uid, start, stop, next);
|
||||
}
|
||||
},
|
||||
function (posts, next) {
|
||||
next(null, {posts: posts, next: stop + 1});
|
||||
},
|
||||
], callback);
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user