From 34133eef8c2bae10fbce7384898e96770137da7b Mon Sep 17 00:00:00 2001 From: psychobunny Date: Tue, 21 May 2013 18:12:39 -0400 Subject: [PATCH] post counts + read status working on homepage category listing. fixed posts.get_cid_by_pid --- public/templates/home.tpl | 2 +- src/categories.js | 61 +++++++++++++++++++++++++++++---------- src/posts.js | 5 +++- src/topics.js | 8 +++++ src/webserver.js | 2 +- 5 files changed, 60 insertions(+), 18 deletions(-) diff --git a/public/templates/home.tpl b/public/templates/home.tpl index 178df93dca..736b993be5 100644 --- a/public/templates/home.tpl +++ b/public/templates/home.tpl @@ -12,7 +12,7 @@
-

{categories.name} 3

+

{categories.name} {categories.topic_count}

diff --git a/src/categories.js b/src/categories.js index 6a6adc8c9e..955a348ae6 100644 --- a/src/categories.js +++ b/src/categories.js @@ -56,10 +56,10 @@ var RDB = require('./redis.js'), // just a reminder to self that name + slugs are stored into topics data as well. }; - Categories.get = function(callback) { + Categories.get = function(callback, current_user) { RDB.lrange('categories:cid', 0, -1, function(err, cids) { RDB.handle(err); - Categories.get_category(cids, callback); + Categories.get_category(cids, callback, current_user); }); } @@ -79,12 +79,29 @@ var RDB = require('./redis.js'), }); } - Categories.get_category = function(cids, callback) { + + Categories.hasReadCategories = function(cids, uid, callback) { + var batch = RDB.multi(); + + for (var i=0, ii=cids.length; i 0) { @@ -101,26 +119,39 @@ var RDB = require('./redis.js'), .mget(icon) .mget(blockclass) .mget(slug) + .mget(topic_count) .exec(function(err, replies) { name = replies[0]; description = replies[1]; icon = replies[2]; blockclass = replies[3]; slug = replies[4]; + topic_count = replies[5]; + - var categories = []; - for (var i=0, ii=cids.length; i