X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=scripts%2Freset-password.ts;h=b2e5639fb6f234437dddc501c88601bfc54c7dff;hb=951414fc62a40aad4e7295029f3c57489bee2491;hp=a6863f807fa6c7e6085a02ac250675d3d4c4ed24;hpb=3fd3ab2d34d512b160a5e6084d7609be7b4f4452;p=github%2FChocobozzz%2FPeerTube.git diff --git a/scripts/reset-password.ts b/scripts/reset-password.ts index a6863f807..b2e5639fb 100755 --- a/scripts/reset-password.ts +++ b/scripts/reset-password.ts @@ -1,30 +1,33 @@ -import * as program from 'commander' -import { initDatabase } from '../server/initializers' -import { UserModel } from '../server/models/account/user' +import { program } from 'commander' +import { isUserPasswordValid } from '../server/helpers/custom-validators/users' +import { initDatabaseModels } from '../server/initializers/database' +import { UserModel } from '../server/models/user/user' program .option('-u, --user [user]', 'User') .parse(process.argv) -if (program['user'] === undefined) { +const options = program.opts() + +if (options.user === undefined) { console.error('All parameters are mandatory.') process.exit(-1) } -initDatabase(true) +initDatabaseModels(true) .then(() => { - return UserModel.loadByUsername(program['user']) + return UserModel.loadByUsername(options.user) }) .then(user => { if (!user) { - console.error('User unknown.') + console.error('Unknown user.') process.exit(-1) } const readline = require('readline') const Writable = require('stream').Writable const mutableStdout = new Writable({ - write: function (chunk, encoding, callback) { + write: function (_chunk, _encoding, callback) { callback() } }) @@ -36,6 +39,11 @@ initDatabase(true) console.log('New password?') rl.on('line', function (password) { + if (!isUserPasswordValid(password)) { + console.error('New password is invalid.') + process.exit(-1) + } + user.password = password user.save() @@ -44,3 +52,7 @@ initDatabase(true) .finally(() => process.exit(0)) }) }) + .catch(err => { + console.error(err) + process.exit(-1) + })