rework
This commit is contained in:
46
front/v2/src/models/userModel.ts
Normal file
46
front/v2/src/models/userModel.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { personModel } from './personModel';
|
||||
import { roleModel } from './roleModel';
|
||||
|
||||
export class userModel extends personModel {
|
||||
constructor(
|
||||
public override id: string,
|
||||
public email: string,
|
||||
public password: string,
|
||||
public override name: string,
|
||||
public role: roleModel[],
|
||||
public createdAt: Date,
|
||||
public updatedAt: Date,
|
||||
public isLoggedIn: boolean
|
||||
) {
|
||||
super({
|
||||
id,
|
||||
name,
|
||||
profilePicture: null,
|
||||
avatar: null,
|
||||
socialMedia: null,
|
||||
});
|
||||
}
|
||||
|
||||
get isAdmin(): boolean {
|
||||
return this.role.some((role) => role.isAdmin);
|
||||
}
|
||||
|
||||
get isContentManager(): boolean {
|
||||
return this.role.some((role) => role.isContentManager);
|
||||
}
|
||||
|
||||
get isUser(): boolean {
|
||||
return this.role.some((role) => role.isUser);
|
||||
}
|
||||
|
||||
public static readonly DefaultUser: userModel = new userModel(
|
||||
'0',
|
||||
'default@example.com',
|
||||
'',
|
||||
'Default User',
|
||||
[roleModel.UserRole],
|
||||
new Date(),
|
||||
new Date(),
|
||||
false
|
||||
);
|
||||
}
|
Reference in New Issue
Block a user