mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-07-11 02:51:58 +02:00
markAsRead improvement
takes in an array of tids instead of marking topics read 1 by 1 same for the category.markAsRead function
This commit is contained in:
@@ -19,6 +19,10 @@ module.exports = function(db, module) {
|
||||
});
|
||||
};
|
||||
|
||||
module.setsAdd = function(keys, value, callback) {
|
||||
throw new Error('not-implemented');
|
||||
};
|
||||
|
||||
module.setRemove = function(key, value, callback) {
|
||||
module.getListRange(key, 0, -1, function(err, set) {
|
||||
module.set(key, set.splice(set.indexOf(value), 1), callback);
|
||||
|
||||
@@ -31,6 +31,31 @@ module.exports = function(db, module) {
|
||||
});
|
||||
};
|
||||
|
||||
module.setsAdd = function(keys, value, callback) {
|
||||
callback = callback || helpers.noop;
|
||||
if(!Array.isArray(value)) {
|
||||
value = [value];
|
||||
}
|
||||
|
||||
value.forEach(function(element, index, array) {
|
||||
array[index] = helpers.valueToString(element);
|
||||
});
|
||||
|
||||
var bulk = db.collection('objects').initializeUnorderedBulkOp();
|
||||
|
||||
for(var i=0; i<keys.length; ++i) {
|
||||
bulk.find({_key: keys[i]}).upsert().updateOne({ $addToSet: {
|
||||
members: {
|
||||
$each: value
|
||||
}
|
||||
}});
|
||||
}
|
||||
|
||||
bulk.execute(function(err) {
|
||||
return callback(err);
|
||||
});
|
||||
};
|
||||
|
||||
module.setRemove = function(key, value, callback) {
|
||||
callback = callback || helpers.noop;
|
||||
if(!Array.isArray(value)) {
|
||||
|
||||
@@ -8,6 +8,17 @@ module.exports = function(redisClient, module) {
|
||||
});
|
||||
};
|
||||
|
||||
module.setsAdd = function(keys, value, callback) {
|
||||
callback = callback || function() {};
|
||||
var multi = redisClient.multi();
|
||||
for (var i=0; i<keys.length; ++i) {
|
||||
multi.sadd(keys[i], value);
|
||||
}
|
||||
multi.exec(function(err) {
|
||||
callback(err);
|
||||
});
|
||||
};
|
||||
|
||||
module.setRemove = function(key, value, callback) {
|
||||
redisClient.srem(key, value, callback);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user