aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/shared/users/user.model.ts
blob: 09722704a3f0ff3dbe94cc9363aba5aa6481087d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import { User as UserServerModel } from '../../../../../shared';

export class User implements UserServerModel {
  id: number;
  username: string;
  email: string;
  role: string;
  displayNSFW: boolean;
  createdAt: Date;

  constructor(hash: {
    id: number,
    username: string,
    email: string,
    role: string,
    displayNSFW?: boolean,
    createdAt?: Date,
  }) {
    this.id = hash.id;
    this.username = hash.username;
    this.email = hash.email;
    this.role = hash.role;
    this.displayNSFW = hash.displayNSFW;

    if (hash.createdAt) {
      this.createdAt = hash.createdAt;
    }
  }

  isAdmin() {
    return this.role === 'admin';
  }
}