From 93c62283473d11900ef6e7bf4e25a033118dea7c Mon Sep 17 00:00:00 2001 From: Baris Soner Usakli Date: Sat, 20 Jul 2013 15:23:04 -0400 Subject: [PATCH 1/3] handle err --- src/user.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/user.js b/src/user.js index 8dcc3f1b48..d7b3f44d90 100644 --- a/src/user.js +++ b/src/user.js @@ -730,14 +730,14 @@ var utils = require('./../public/src/utils.js'), User.isModerator = function(uid, cid, callback) { RDB.sismember('cid:' + cid + ':moderators', uid, function(err, exists) { - // @todo handle error + RDB.handle(err); callback(!!exists); }); } User.isAdministrator = function(uid, callback) { RDB.sismember('administrators', uid, function(err, exists) { - // @todo handle error + RDB.handle(err); callback(!!exists); }); } From eec5249eb67179f8943371319db140daac116121 Mon Sep 17 00:00:00 2001 From: Baris Soner Usakli Date: Sat, 20 Jul 2013 16:01:44 -0400 Subject: [PATCH 2/3] possible fix for wront sorting on /recent --- src/categories.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/categories.js b/src/categories.js index 78fce48cbe..408eaf8fbb 100644 --- a/src/categories.js +++ b/src/categories.js @@ -128,7 +128,6 @@ var RDB = require('./redis.js'), Categories.getTopicsByTids = function(tids, current_user, callback, category_id /*temporary*/) { var retrieved_topics = []; - var topicCountToLoad = tids.length; function getTopicInfo(topicData, callback) { @@ -177,9 +176,8 @@ var RDB = require('./redis.js'), return !deleted || (deleted && topicInfo.privileges.view_deleted) || topicData.uid === current_user; } - for(var i=0; i Date: Sat, 20 Jul 2013 16:59:53 -0400 Subject: [PATCH 3/3] when a post is restored update topic timestamp --- src/postTools.js | 10 ++++++++-- src/posts.js | 1 - src/topics.js | 1 + 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/postTools.js b/src/postTools.js index 094d149707..6434a3cc22 100644 --- a/src/postTools.js +++ b/src/postTools.js @@ -81,7 +81,7 @@ marked.setOptions({ } PostTools.delete = function(uid, pid) { - var success = function() { + var success = function() { posts.setPostField(pid, 'deleted', 1); @@ -116,7 +116,7 @@ marked.setOptions({ } PostTools.restore = function(uid, pid) { - var success = function() { + var success = function() { posts.setPostField(pid, 'deleted', 0); posts.getPostFields(pid, ['tid', 'uid'], function(postData) { @@ -126,6 +126,12 @@ marked.setOptions({ io.sockets.in('topic_' + postData.tid).emit('event:post_restored', { pid: pid }); + + threadTools.get_latest_undeleted_pid(postData.tid, function(err, pid) { + posts.getPostField(pid, 'timestamp', function(timestamp) { + topics.updateTimestamp(postData.tid, timestamp); + }); + }); }); }; diff --git a/src/posts.js b/src/posts.js index 5a09ff0df8..b4e07be059 100644 --- a/src/posts.js +++ b/src/posts.js @@ -298,7 +298,6 @@ marked.setOptions({ }); topics.increasePostCount(tid); - topics.setTopicField(tid, 'lastposttime', timestamp); topics.updateTimestamp(tid, timestamp); RDB.incr('totalpostcount'); diff --git a/src/topics.js b/src/topics.js index a7c37f7cde..773c91bf47 100644 --- a/src/topics.js +++ b/src/topics.js @@ -452,6 +452,7 @@ marked.setOptions({ Topics.updateTimestamp = function(tid, timestamp) { RDB.zadd(schema.topics().recent, timestamp, tid); + Topics.setTopicField(tid, 'lastposttime', timestamp); } }(exports)); \ No newline at end of file