]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/angular/users/models/token.ts
Fix client linting
[github/Chocobozzz/PeerTube.git] / client / angular / users / models / token.ts
index 688dfdc803c2d08c83d949a0216be8cd4f7ecefa..b7872e74a1fe69583ce796e919518ec5b26c0a69 100644 (file)
@@ -3,13 +3,27 @@ export class Token {
   refresh_token: string;
   token_type: string;
 
-  constructor (hash) {
-    this.access_token = hash.access_token;
-    this.refresh_token = hash.refresh_token;
-    this.token_type = hash.token_type;
+  static load(): Token {
+    return new Token({
+      access_token: localStorage.getItem('access_token'),
+      refresh_token: localStorage.getItem('refresh_token'),
+      token_type: localStorage.getItem('token_type')
+    });
   }
 
-  save() {
+  constructor (hash?: any) {
+    if (hash) {
+      this.access_token = hash.access_token;
+      this.refresh_token = hash.refresh_token;
+      if (hash.token_type === 'bearer') {
+        this.token_type = 'Bearer';
+      } else {
+        this.token_type = hash.token_type;
+      }
+    }
+  }
+
+  save():void {
     localStorage.setItem('access_token', this.access_token);
     localStorage.setItem('refresh_token', this.refresh_token);
     localStorage.setItem('token_type', this.token_type);