From cd096f8832d464330e6ff952d15acd1a252a014c Mon Sep 17 00:00:00 2001 From: barisusakli Date: Fri, 15 Aug 2014 11:48:01 -0400 Subject: [PATCH] sortedSetScores for tag counts --- src/database/level/sorted.js | 29 ++++++++++++++++ src/database/mongo/sorted.js | 64 +++++++++++++++++++++++++----------- src/database/redis/sorted.js | 16 ++++++--- src/topics/tags.js | 6 ++-- 4 files changed, 87 insertions(+), 28 deletions(-) diff --git a/src/database/level/sorted.js b/src/database/level/sorted.js index 46305c56d1..369c820d53 100644 --- a/src/database/level/sorted.js +++ b/src/database/level/sorted.js @@ -153,6 +153,35 @@ module.exports = function(db, module) { }); }; + module.sortedSetScores = function(key, values, callback) { + values = values.map(function(value) { + return value ? value.toString() : value; + }); + + module.getListRange(key, 0, -1, function(err, list) { + if (err) { + return callback(err); + } + + var map = {}; + list = list.filter(function(item) { + return values.indexOf(item.value) !== -1; + }).forEach(function(item) { + map[item.value] = item.score; + }); + + var returnData = new Array(values.length), + score; + + for(var i=0; i