mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-01 03:26:04 +01:00
update deprecated methods (#6794)
This commit is contained in:
committed by
GitHub
parent
1cb2e1e368
commit
18d0deeccb
@@ -32,9 +32,9 @@ module.exports = function (db, module) {
|
||||
return callback();
|
||||
}
|
||||
|
||||
var fields = { _id: 0, value: 1 };
|
||||
if (withScores) {
|
||||
fields.score = 1;
|
||||
var fields = { _id: 0, _key: 0 };
|
||||
if (!withScores) {
|
||||
fields.score = 0;
|
||||
}
|
||||
|
||||
if (Array.isArray(key)) {
|
||||
@@ -62,7 +62,7 @@ module.exports = function (db, module) {
|
||||
limit = 0;
|
||||
}
|
||||
|
||||
db.collection('objects').find({ _key: key }, { fields: fields })
|
||||
db.collection('objects').find({ _key: key }, { projection: fields })
|
||||
.limit(limit)
|
||||
.skip(start)
|
||||
.sort({ score: sort })
|
||||
@@ -70,6 +70,7 @@ module.exports = function (db, module) {
|
||||
if (err || !data) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
if (reverse) {
|
||||
data.reverse();
|
||||
}
|
||||
@@ -117,12 +118,12 @@ module.exports = function (db, module) {
|
||||
query.score.$lte = max;
|
||||
}
|
||||
|
||||
var fields = { _id: 0, value: 1 };
|
||||
if (withScores) {
|
||||
fields.score = 1;
|
||||
var fields = { _id: 0, _key: 0 };
|
||||
if (!withScores) {
|
||||
fields.score = 0;
|
||||
}
|
||||
|
||||
db.collection('objects').find(query, { fields: fields })
|
||||
db.collection('objects').find(query, { projection: fields })
|
||||
.limit(count)
|
||||
.skip(start)
|
||||
.sort({ score: sort })
|
||||
@@ -155,7 +156,7 @@ module.exports = function (db, module) {
|
||||
query.score.$lte = max;
|
||||
}
|
||||
|
||||
db.collection('objects').count(query, function (err, count) {
|
||||
db.collection('objects').countDocuments(query, function (err, count) {
|
||||
callback(err, count || 0);
|
||||
});
|
||||
};
|
||||
@@ -164,7 +165,7 @@ module.exports = function (db, module) {
|
||||
if (!key) {
|
||||
return callback(null, 0);
|
||||
}
|
||||
db.collection('objects').count({ _key: key }, function (err, count) {
|
||||
db.collection('objects').countDocuments({ _key: key }, function (err, count) {
|
||||
count = parseInt(count, 10);
|
||||
callback(err, count || 0);
|
||||
});
|
||||
@@ -220,7 +221,7 @@ module.exports = function (db, module) {
|
||||
return callback(err, null);
|
||||
}
|
||||
|
||||
db.collection('objects').count({
|
||||
db.collection('objects').countDocuments({
|
||||
$or: [
|
||||
{
|
||||
_key: key,
|
||||
@@ -273,7 +274,7 @@ module.exports = function (db, module) {
|
||||
return callback(null, null);
|
||||
}
|
||||
value = helpers.valueToString(value);
|
||||
db.collection('objects').findOne({ _key: key, value: value }, { fields: { _id: 0, score: 1 } }, function (err, result) {
|
||||
db.collection('objects').findOne({ _key: key, value: value }, { projection: { _id: 0, _key: 0, value: 0 } }, function (err, result) {
|
||||
callback(err, result ? result.score : null);
|
||||
});
|
||||
};
|
||||
@@ -283,7 +284,7 @@ module.exports = function (db, module) {
|
||||
return callback();
|
||||
}
|
||||
value = helpers.valueToString(value);
|
||||
db.collection('objects').find({ _key: { $in: keys }, value: value }, { _id: 0, _key: 1, score: 1 }).toArray(function (err, result) {
|
||||
db.collection('objects').find({ _key: { $in: keys }, value: value }, { projection: { _id: 0, value: 0 } }).toArray(function (err, result) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
@@ -306,7 +307,7 @@ module.exports = function (db, module) {
|
||||
return callback(null, null);
|
||||
}
|
||||
values = values.map(helpers.valueToString);
|
||||
db.collection('objects').find({ _key: key, value: { $in: values } }, { _id: 0, value: 1, score: 1 }).toArray(function (err, result) {
|
||||
db.collection('objects').find({ _key: key, value: { $in: values } }, { projection: { _id: 0, _key: 0 } }).toArray(function (err, result) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
@@ -333,7 +334,7 @@ module.exports = function (db, module) {
|
||||
return callback();
|
||||
}
|
||||
value = helpers.valueToString(value);
|
||||
db.collection('objects').findOne({ _key: key, value: value }, { _id: 0, value: 1 }, function (err, result) {
|
||||
db.collection('objects').findOne({ _key: key, value: value }, { projection: { _id: 0, _key: 0, score: 0 } }, function (err, result) {
|
||||
callback(err, !!result);
|
||||
});
|
||||
};
|
||||
@@ -343,17 +344,19 @@ module.exports = function (db, module) {
|
||||
return callback();
|
||||
}
|
||||
values = values.map(helpers.valueToString);
|
||||
db.collection('objects').find({ _key: key, value: { $in: values } }, { fields: { _id: 0, value: 1 } }).toArray(function (err, results) {
|
||||
db.collection('objects').find({ _key: key, value: { $in: values } }, { projection: { _id: 0, _key: 0, score: 0 } }).toArray(function (err, results) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
results = results.map(function (item) {
|
||||
return item.value;
|
||||
var isMember = {};
|
||||
results.forEach(function (item) {
|
||||
if (item) {
|
||||
isMember[item.value] = true;
|
||||
}
|
||||
});
|
||||
|
||||
values = values.map(function (value) {
|
||||
return results.indexOf(value) !== -1;
|
||||
return !!isMember[value];
|
||||
});
|
||||
callback(null, values);
|
||||
});
|
||||
@@ -364,17 +367,19 @@ module.exports = function (db, module) {
|
||||
return callback();
|
||||
}
|
||||
value = helpers.valueToString(value);
|
||||
db.collection('objects').find({ _key: { $in: keys }, value: value }, { fields: { _id: 0, _key: 1, value: 1 } }).toArray(function (err, results) {
|
||||
db.collection('objects').find({ _key: { $in: keys }, value: value }, { projection: { _id: 0, score: 0 } }).toArray(function (err, results) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
results = results.map(function (item) {
|
||||
return item._key;
|
||||
var isMember = {};
|
||||
results.forEach(function (item) {
|
||||
if (item) {
|
||||
isMember[item._key] = true;
|
||||
}
|
||||
});
|
||||
|
||||
results = keys.map(function (key) {
|
||||
return results.indexOf(key) !== -1;
|
||||
return !!isMember[key];
|
||||
});
|
||||
callback(null, results);
|
||||
});
|
||||
@@ -384,7 +389,7 @@ module.exports = function (db, module) {
|
||||
if (!Array.isArray(keys) || !keys.length) {
|
||||
return callback(null, []);
|
||||
}
|
||||
db.collection('objects').find({ _key: { $in: keys } }, { _id: 0, _key: 1, value: 1 }).sort({ score: 1 }).toArray(function (err, data) {
|
||||
db.collection('objects').find({ _key: { $in: keys } }, { projection: { _id: 0, score: 0 } }).sort({ score: 1 }).toArray(function (err, data) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
@@ -412,7 +417,7 @@ module.exports = function (db, module) {
|
||||
value = helpers.valueToString(value);
|
||||
data.score = parseFloat(increment);
|
||||
|
||||
db.collection('objects').findAndModify({ _key: key, value: value }, {}, { $inc: data }, { new: true, upsert: true }, function (err, result) {
|
||||
db.collection('objects').findOneAndUpdate({ _key: key, value: value }, { $inc: data }, { returnOriginal: false, upsert: true }, function (err, result) {
|
||||
// if there is duplicate key error retry the upsert
|
||||
// https://github.com/NodeBB/NodeBB/issues/4467
|
||||
// https://jira.mongodb.org/browse/SERVER-14322
|
||||
@@ -448,7 +453,7 @@ module.exports = function (db, module) {
|
||||
var query = { _key: key };
|
||||
buildLexQuery(query, min, max);
|
||||
|
||||
db.collection('objects').find(query, { _id: 0, value: 1 })
|
||||
db.collection('objects').find(query, { projection: { _id: 0, _key: 0, score: 0 } })
|
||||
.sort({ value: sort })
|
||||
.skip(start)
|
||||
.limit(count === -1 ? 0 : count)
|
||||
@@ -469,7 +474,7 @@ module.exports = function (db, module) {
|
||||
var query = { _key: key };
|
||||
buildLexQuery(query, min, max);
|
||||
|
||||
db.collection('objects').remove(query, function (err) {
|
||||
db.collection('objects').deleteMany(query, function (err) {
|
||||
callback(err);
|
||||
});
|
||||
};
|
||||
@@ -499,13 +504,12 @@ module.exports = function (db, module) {
|
||||
module.processSortedSet = function (setKey, processFn, options, callback) {
|
||||
var done = false;
|
||||
var ids = [];
|
||||
var project = { _id: 0, value: 1 };
|
||||
if (options.withScores) {
|
||||
project.score = 1;
|
||||
var project = { _id: 0, _key: 0 };
|
||||
if (!options.withScores) {
|
||||
project.score = 0;
|
||||
}
|
||||
var cursor = db.collection('objects').find({ _key: setKey })
|
||||
var cursor = db.collection('objects').find({ _key: setKey }, { projection: project })
|
||||
.sort({ score: 1 })
|
||||
.project(project)
|
||||
.batchSize(options.batch);
|
||||
|
||||
async.whilst(
|
||||
|
||||
Reference in New Issue
Block a user