This commit is contained in:
2021-06-30 21:24:20 +02:00
parent 96827e29cd
commit b2bed61e82

View File

@@ -5,11 +5,11 @@ export default class Users extends BaseSchema {
protected tableName = 'users'
public async up () {
this.schema.createTable(this.tableName, async (table) => {
this.schema.createTable(this.tableName, (table) => {
table.increments('id').primary()
table.string('username', 255).notNullable()
table.string('email', 255).notNullable()
table.string('password', 180).defaultTo(await this.randomPassword()).notNullable()
table.string('password', 180).defaultTo(this.randomPassword()).notNullable()
table.boolean('is_confirmed').defaultTo(false).notNullable()
table.string('remember_me_token').defaultTo(null).nullable()
table.string('confirmation_token').defaultTo(null).nullable()
@@ -17,14 +17,16 @@ export default class Users extends BaseSchema {
})
}
private async randomPassword(): Promise<string> {
private randomPassword(): string {
let password = ''
const char = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!.:=+-_$*^&@#%ù/àçè()é"'
const size = 64
for (let i = 0; i < size; i++) {
password += char.charAt(Math.random() * char.length)
}
password = await Hash.make(password)
Hash.make(password).then((value => {
password = value
}))
return password
}