65 lines
1.0 KiB
TypeScript
65 lines
1.0 KiB
TypeScript
import { Injectable, } from '@angular/core';
|
|
import { Observable } from 'rxjs';
|
|
import {LocalStorageService} from 'ngx-webstorage';
|
|
import 'rxjs/add/operator/map';
|
|
|
|
|
|
@Injectable()
|
|
export class TokenService {
|
|
|
|
|
|
constructor (private storage : LocalStorageService) {
|
|
|
|
}
|
|
|
|
getProvider(){
|
|
return this.storage.retrieve('provider');
|
|
}
|
|
|
|
setProvider(provider : TokenProvider){
|
|
this.storage.store('provider',provider);
|
|
}
|
|
|
|
getToken(){
|
|
return this.storage.retrieve('token');
|
|
}
|
|
|
|
setToken(token){
|
|
this.storage.store('token',token);
|
|
}
|
|
|
|
isLoggedIn(){
|
|
return this.storage.retrieve('loggedIn');
|
|
}
|
|
|
|
setLoggedIn(boolStatus){
|
|
this.storage.store('loggedIn',boolStatus);
|
|
}
|
|
|
|
getEmail(){
|
|
return this.storage.retrieve('email');
|
|
}
|
|
|
|
setEmail(email){
|
|
this.storage.store('email',email);
|
|
}
|
|
|
|
getUsername(){
|
|
return this.storage.retrieve('username');
|
|
}
|
|
|
|
setUsername(username){
|
|
this.storage.store('username',username);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
export enum TokenProvider {
|
|
native,
|
|
google
|
|
}
|
|
|
|
|
|
|