mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
fix: #7487
This commit is contained in:
45
src/upgrades/1.12.1/clear_username_email_history.js
Normal file
45
src/upgrades/1.12.1/clear_username_email_history.js
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
'use strict';
|
||||||
|
|
||||||
|
const async = require('async');
|
||||||
|
const db = require('../../database');
|
||||||
|
const user = require('../../user');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
name: 'Delete username email history for deleted users',
|
||||||
|
timestamp: Date.UTC(2019, 2, 25),
|
||||||
|
method: async function (callback) {
|
||||||
|
const progress = this.progress;
|
||||||
|
var currentUid = 1;
|
||||||
|
db.getObjectField('global', 'nextUid', function (err, nextUid) {
|
||||||
|
if (err) {
|
||||||
|
return callback(err);
|
||||||
|
}
|
||||||
|
progress.total = nextUid;
|
||||||
|
async.whilst(function () {
|
||||||
|
return currentUid < nextUid;
|
||||||
|
},
|
||||||
|
function (next) {
|
||||||
|
progress.incr();
|
||||||
|
user.exists(currentUid, function (err, exists) {
|
||||||
|
if (err) {
|
||||||
|
return next(err);
|
||||||
|
}
|
||||||
|
if (exists) {
|
||||||
|
currentUid += 1;
|
||||||
|
return next();
|
||||||
|
}
|
||||||
|
db.deleteAll(['user:' + currentUid + ':usernames', 'user:' + currentUid + ':emails'], function (err) {
|
||||||
|
if (err) {
|
||||||
|
return next(err);
|
||||||
|
}
|
||||||
|
currentUid += 1;
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
function (err) {
|
||||||
|
callback(err);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -156,6 +156,8 @@ module.exports = function (User) {
|
|||||||
'uid:' + uid + ':followed_tids',
|
'uid:' + uid + ':followed_tids',
|
||||||
'uid:' + uid + ':ignored_tids',
|
'uid:' + uid + ':ignored_tids',
|
||||||
'user:' + uid + ':settings',
|
'user:' + uid + ':settings',
|
||||||
|
'user:' + uid + ':usernames',
|
||||||
|
'user:' + uid + ':emails',
|
||||||
'uid:' + uid + ':topics', 'uid:' + uid + ':posts',
|
'uid:' + uid + ':topics', 'uid:' + uid + ':posts',
|
||||||
'uid:' + uid + ':chats', 'uid:' + uid + ':chats:unread',
|
'uid:' + uid + ':chats', 'uid:' + uid + ':chats:unread',
|
||||||
'uid:' + uid + ':chat:rooms', 'uid:' + uid + ':chat:rooms:unread',
|
'uid:' + uid + ':chat:rooms', 'uid:' + uid + ':chat:rooms:unread',
|
||||||
|
|||||||
Reference in New Issue
Block a user