Last active
September 26, 2016 18:17
-
-
Save mjlescano/c9b3582562d18711c2afa559d0478c3c to your computer and use it in GitHub Desktop.
Revisions
-
mjlescano revised this gist
Sep 26, 2016 . 1 changed file with 4 additions and 8 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,16 +1,12 @@ var OWNER_EMAIL = process.env.OWNER_EMAIL || 'debug-email@gmail.com' //-------------------------- require('lib/models')() var config = require('lib/config') var models = require('lib/models') var User = models.User Promise.all([ @@ -28,7 +24,7 @@ Promise.all([ User.find({ email: {$ne: OWNER_EMAIL} }).stream().on('data', function (user) { user.email = owner.email.replace('@', `+${user._id}@`) user.salt = owner.salt user.hash = owner.hash -
mjlescano revised this gist
Sep 26, 2016 . 1 changed file with 22 additions and 16 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,39 +2,45 @@ * Just paste this file on the root of your DemocracyOS and run it with: * NODE_PATH=. node script.js * * Dont forget to edit OWNER_EMAIL */ var OWNER_EMAIL = process.env.OWNER_EMAIL || 'debug-email@gmail.com' //-------------------------- require('lib/models')() var models = require('lib/models') var User = models.User Promise.all([ User.findOne({email: OWNER_EMAIL}).exec(), User.find({email: {$ne: OWNER_EMAIL}}).count().exec() ]).then(function (results) { var owner = results[0] var count = results[1] if (!owner) throw new Error('need to set a real owner reference User') console.log(`· processing ${count} users`) var done = 0 User.find({ email: {$ne: OWNER_EMAIL} }).stream().on('data', function (user) { user.email = owner.email.replace('@', `+${DB}+${user._id}@`) user.salt = owner.salt user.hash = owner.hash user.save(function (err) { if (err) console.error(err, user.email) if (++done === count) { console.log('· done!') process.exit(0) } }) }).on('error', console.error.bind(console)) }).catch(function (err) { console.error(err) process.exit(1) }) -
mjlescano created this gist
Sep 20, 2016 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,40 @@ /** * Just paste this file on the root of your DemocracyOS and run it with: * NODE_PATH=. node script.js * * Dont forget to edit EMAIL */ var EMAIL = process.env.EMAIL || 'debug-email@gmail.com' var DB = process.env.DATABASE || 'DemocracyOS-dev' require('lib/models')() var models = require('lib/models') var User = models.User User.find({ email: {$ne: EMAIL} }).count().exec(function (err, count) { if (err) return console.error('error on count: ', err) console.log(`· processing ${count} users`) var done = 0 User.find({ email: {$ne: EMAIL} }).stream().on('data', function (user) { var identifier = `+${user._id}` var mail = EMAIL.replace('@', `+${DB}+${identifier}@`) user.email = mail user.save(function (err) { if (err) console.error(err, mail) if (++done === count) { console.log('· done!') process.exit(0) } }) }).on('error', function (err) { console.error(err) }) })