Advertisement
Guest User

Untitled

a guest
Apr 13th, 2018
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import {Injectable} from '@angular/core'
  2. import {HttpClient} from '@angular/common/http'
  3. import {Router, NavigationEnd} from '@angular/router'
  4.  
  5. import {Observable} from 'rxjs/Observable'
  6. import 'rxjs/add/operator/do'
  7. import 'rxjs/add/operator/filter'
  8.  
  9. //import {API} from '../../app.api'; // Ex.:http://localhost:8888
  10. //import {User} from './user.model'
  11.  
  12. @Injectable()
  13. export class LoginService {
  14.  
  15.   user: User
  16.   lastUrl: string
  17.  
  18.   constructor(private http: HttpClient, private router: Router){
  19.     this.router.events.filter(e => e instanceof NavigationEnd)
  20.                       .subscribe( (e: NavigationEnd) => this.lastUrl = e.url)
  21.   }
  22.  
  23.   isLoggedIn(): boolean {
  24.     return this.user !== undefined
  25.   }
  26.  
  27.   login(email: string, password: string): Observable<User> {
  28.     return this.http.post<User>(`${API}/login`,
  29.                           {email: email, password: password})
  30.                     .do(user => this.user = user)
  31.   }
  32.  
  33.   logout(){
  34.     this.user = undefined
  35.   }
  36.  
  37.   handleLogin(path: string = this.lastUrl){
  38.     //this.router.navigate(['/login', btoa(path)])
  39.     //fazer o redirect para o login
  40.   }
  41.  
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement