Do not prefix private attributes
[oweals/peertube.git] / client / app / users / login / login.component.ts
1 import { Component } from '@angular/core';
2 import { Router } from '@angular/router-deprecated';
3
4 import { AuthService, AuthStatus, User } from '../shared/index';
5
6 @Component({
7   selector: 'my-user-login',
8   styleUrls: [ 'client/app/users/login/login.component.css' ],
9   templateUrl: 'client/app/users/login/login.component.html'
10 })
11
12 export class UserLoginComponent {
13   constructor(private authService: AuthService, private router: Router) {}
14
15   login(username: string, password: string) {
16     this.authService.login(username, password).subscribe(
17       result => {
18         const user = new User(username, result);
19         user.save();
20
21         this.authService.setStatus(AuthStatus.LoggedIn);
22
23         this.router.navigate(['VideosList']);
24       },
25       error => {
26         if (error.error === 'invalid_grant') {
27           alert('Credentials are invalid.');
28         } else {
29           alert(`${error.error}: ${error.error_description}`);
30         }
31       }
32     );
33   }
34 }