Password encryption

This commit is contained in:
2024-11-20 10:43:48 +01:00
parent e02f2d252e
commit d4fbda26d7
12 changed files with 289 additions and 43 deletions

View File

@@ -1,9 +1,10 @@
import { Table, Column, Model, HasMany, Unique, BelongsTo, ForeignKey } from 'sequelize-typescript';
import { Table, Column, Model, HasMany, Unique, BelongsTo, ForeignKey, BeforeCreate, BeforeUpdate } from 'sequelize-typescript';
import { Order } from '../ordering/order.model';
import { Address } from './address.model';
import { Payment } from './payment.model';
import { AccountRole } from './accountRole.model';
import { Rating } from '../acts/rating.model';
import { encryptString } from '../../scripts/encryptScripts';
@Table({ timestamps: false })
export class Account extends Model {
@@ -44,4 +45,12 @@ export class Account extends Model {
@BelongsTo(() => AccountRole)
accountRole: AccountRole
// Hooks
@BeforeCreate
static async encryptPassword(instance: Account) {
instance.dataValues.password = encryptString(instance.dataValues.password)
}
}