aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/angular/users/models
diff options
context:
space:
mode:
Diffstat (limited to 'client/angular/users/models')
-rw-r--r--client/angular/users/models/token.ts24
-rw-r--r--client/angular/users/models/user.ts20
2 files changed, 39 insertions, 5 deletions
diff --git a/client/angular/users/models/token.ts b/client/angular/users/models/token.ts
index 688dfdc80..906bf501b 100644
--- a/client/angular/users/models/token.ts
+++ b/client/angular/users/models/token.ts
@@ -3,13 +3,27 @@ export class Token {
3 refresh_token: string; 3 refresh_token: string;
4 token_type: string; 4 token_type: string;
5 5
6 constructor (hash) { 6 constructor (hash?: any) {
7 this.access_token = hash.access_token; 7 if (hash) {
8 this.refresh_token = hash.refresh_token; 8 this.access_token = hash.access_token;
9 this.token_type = hash.token_type; 9 this.refresh_token = hash.refresh_token;
10 if (hash.token_type === 'bearer') {
11 this.token_type = 'Bearer';
12 } else {
13 this.token_type = hash.token_type;
14 }
15 }
10 } 16 }
11 17
12 save() { 18 static load(): Token {
19 return new Token({
20 access_token: localStorage.getItem('access_token'),
21 refresh_token: localStorage.getItem('refresh_token'),
22 token_type: localStorage.getItem('token_type')
23 });
24 }
25
26 save():void {
13 localStorage.setItem('access_token', this.access_token); 27 localStorage.setItem('access_token', this.access_token);
14 localStorage.setItem('refresh_token', this.refresh_token); 28 localStorage.setItem('refresh_token', this.refresh_token);
15 localStorage.setItem('token_type', this.token_type); 29 localStorage.setItem('token_type', this.token_type);
diff --git a/client/angular/users/models/user.ts b/client/angular/users/models/user.ts
new file mode 100644
index 000000000..2c56a6132
--- /dev/null
+++ b/client/angular/users/models/user.ts
@@ -0,0 +1,20 @@
1import { Token } from './token';
2
3export class User {
4 username: string;
5 token: Token;
6
7 constructor (username: string, hash_token: any) {
8 this.username = username;
9 this.token = new Token(hash_token);
10 }
11
12 static load(): User {
13 return new User(localStorage.getItem('username'), Token.load());
14 }
15
16 save(): void {
17 localStorage.setItem('username', this.username);
18 this.token.save();
19 }
20}