fix: on new post add it to cid::uid::pids

v1.18.x
Barış Soner Uşaklı 6 years ago
parent 26ff02dc72
commit 6a7bc1c5fb

@ -64,6 +64,10 @@ module.exports = function (Posts) {
db.setObject('post:' + postData.pid, postData, next);
},
function (next) {
topics.getTopicFields(tid, ['cid', 'pinned'], next);
},
function (topicData, next) {
postData.cid = topicData.cid;
async.parallel([
function (next) {
user.onNewPostMade(postData, next);
@ -72,13 +76,7 @@ module.exports = function (Posts) {
topics.onNewPostMade(postData, next);
},
function (next) {
topics.getTopicFields(tid, ['cid', 'pinned'], function (err, topicData) {
if (err) {
return next(err);
}
postData.cid = topicData.cid;
categories.onNewPostMade(topicData.cid, topicData.pinned, postData, next);
});
categories.onNewPostMade(topicData.cid, topicData.pinned, postData, next);
},
function (next) {
groups.onNewPostMade(postData, next);

@ -69,7 +69,7 @@ module.exports = function (User) {
User.onNewPostMade = function (postData, callback) {
async.series([
function (next) {
User.addPostIdToUser(postData.uid, postData.pid, postData.timestamp, next);
User.addPostIdToUser(postData, next);
},
function (next) {
User.incrementUserPostCountBy(postData.uid, 1, next);
@ -83,8 +83,11 @@ module.exports = function (User) {
], callback);
};
User.addPostIdToUser = function (uid, pid, timestamp, callback) {
db.sortedSetAdd('uid:' + uid + ':posts', timestamp, pid, callback);
User.addPostIdToUser = function (postData, callback) {
db.sortedSetsAdd([
'uid:' + postData.uid + ':posts',
'cid:' + postData.cid + ':uid:' + postData.uid + ':pids',
], postData.timestamp, postData.pid, callback);
};
User.incrementUserPostCountBy = function (uid, value, callback) {

Loading…
Cancel
Save