diff --git a/public/src/forum/topic.js b/public/src/forum/topic.js
index 3910ee9bc9..bc3cb9cd9d 100644
--- a/public/src/forum/topic.js
+++ b/public/src/forum/topic.js
@@ -114,10 +114,12 @@ define(['composer', 'forum/pagination'], function(composer, pagination) {
});
$('.markAsUnreadForAll').on('click', function() {
+ var btn = $(this);
socket.emit('topics.markAsUnreadForAll', tid, function(err) {
if(err) {
return app.alertError(err.message);
}
+ btn.parents('.thread-tools.open').find('.dropdown-toggle').trigger('click');
});
return false;
})
diff --git a/public/templates/home.tpl b/public/templates/home.tpl
index fa4d1910cd..f47c85a35e 100644
--- a/public/templates/home.tpl
+++ b/public/templates/home.tpl
@@ -9,7 +9,7 @@
- {categories.topic_count}
+ {categories.topic_count}
diff --git a/src/categories.js b/src/categories.js
index b998701048..0804b8a889 100644
--- a/src/categories.js
+++ b/src/categories.js
@@ -334,7 +334,8 @@ var db = require('./database'),
}
Categories.hasReadCategory(cid, uid, function(hasRead) {
- categoryData.badgeclass = (parseInt(categoryData.topic_count, 10) === 0 || (hasRead && uid !== 0)) ? '' : 'badge-important';
+
+ categoryData['unread-class'] = (parseInt(categoryData.topic_count, 10) === 0 || (hasRead && parseInt(uid, 10) !== 0)) ? '' : 'unread';
callback(null, categoryData);
});
diff --git a/src/topics.js b/src/topics.js
index 5d8acb916e..488a80517c 100644
--- a/src/topics.js
+++ b/src/topics.js
@@ -152,12 +152,12 @@ var async = require('async'),
posts.create(uid, tid, content, next);
},
function(postData, next) {
+
threadTools.notifyFollowers(tid, postData.pid, uid);
+
user.sendPostNotificationToFollowers(uid, tid, postData.pid);
- Topics.markCategoryUnreadForAll(tid, function(err) {
- next(err, postData);
- });
+ next(err, postData);
},
function(postData, next) {
Topics.markAsUnreadForAll(tid, function(err) {
@@ -972,7 +972,12 @@ var async = require('async'),
}
Topics.markAsUnreadForAll = function(tid, callback) {
- db.delete('tid:' + tid + ':read_by_uid', callback);
+ db.delete('tid:' + tid + ':read_by_uid', function(err) {
+ if(err) {
+ return callback(err);
+ }
+ Topics.markCategoryUnreadForAll(tid, callback)
+ });
}
Topics.markAsRead = function(tid, uid, callback) {