From f3be31ed7e3f01fa349d6d547987d565c77e967c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Szczepa=C5=84ski?= Date: Fri, 29 Nov 2019 21:07:00 +0100 Subject: [PATCH] PUNKT-15 Update Logowanie przez USOS --- FrontEnd/src/app/authentication.service.ts | 11 ++++++----- FrontEnd/src/app/login.ts | 14 ++++++++++++++ .../app/login/login-usos/login-usos.component.ts | 5 +---- FrontEnd/src/app/login/login.component.ts | 4 ++-- 4 files changed, 23 insertions(+), 11 deletions(-) create mode 100644 FrontEnd/src/app/login.ts diff --git a/FrontEnd/src/app/authentication.service.ts b/FrontEnd/src/app/authentication.service.ts index 0a09265..37215ee 100644 --- a/FrontEnd/src/app/authentication.service.ts +++ b/FrontEnd/src/app/authentication.service.ts @@ -6,6 +6,7 @@ import 'rxjs/add/operator/catch'; import 'rxjs/add/observable/throw'; import { MatSnackBar } from '@angular/material/snack-bar'; import { Subject } from 'rxjs/Subject'; +import { USOSUrl, LoginKey } from './login'; @Injectable() export class AuthenticationService { @@ -66,8 +67,8 @@ export class AuthenticationService { } } - getUSOSTokens(): Observable { - return this.http.get(encodeURI('usos/request_token?oauth_callback=http://localhost:4200/login/usos')); + getUSOSTokens(): Observable { + return this.http.get(encodeURI('usos/request_token?oauth_callback=http://localhost:4200/login/usos')); } getToken(): String { @@ -79,15 +80,15 @@ export class AuthenticationService { } } - getAccessByUSOS(outh_t: string, outh_t_secret: string, outh_ver: string): Observable { + getAccessByUSOS(outh_t: string, outh_t_secret: string, outh_ver: string): Observable { const headers = new HttpHeaders({ 'oauth_token' : outh_t, 'oauth_token_secret': outh_t_secret, 'oauth_verifier' : outh_ver }); - return this.http.get('usos/access_token' , {headers: headers}); - } + return this.http.get('usos/access_token' , {headers: headers}); + } isLoggedIn(): boolean { const token: String = this.getToken(); diff --git a/FrontEnd/src/app/login.ts b/FrontEnd/src/app/login.ts new file mode 100644 index 0000000..51ecd7a --- /dev/null +++ b/FrontEnd/src/app/login.ts @@ -0,0 +1,14 @@ +export class USOSUrl { + + url: string; + + constructor() {} +} + +export class LoginKey { + + key: string; + username: string; + + constructor() {} +} diff --git a/FrontEnd/src/app/login/login-usos/login-usos.component.ts b/FrontEnd/src/app/login/login-usos/login-usos.component.ts index 61ca61a..4e44923 100644 --- a/FrontEnd/src/app/login/login-usos/login-usos.component.ts +++ b/FrontEnd/src/app/login/login-usos/login-usos.component.ts @@ -9,10 +9,7 @@ import { Router, ActivatedRoute } from '@angular/router'; }) export class LoginUsosComponent implements OnInit { - username = ''; - constructor(private authenticationService: AuthenticationService, - private activatedRoute: ActivatedRoute, private router: Router) {} @@ -23,7 +20,7 @@ export class LoginUsosComponent implements OnInit { this.authenticationService.getAccessByUSOS(localStorage.getItem('outh_token'), localStorage.getItem('outh_token_secret'), localStorage.getItem('oauth_verifier')).subscribe( message => { - this.authenticationService.usosLogin(this.username, message); + this.authenticationService.usosLogin(message.username, message.key); this.router.navigate(['/home']); } ); diff --git a/FrontEnd/src/app/login/login.component.ts b/FrontEnd/src/app/login/login.component.ts index f86f431..a13d8ee 100644 --- a/FrontEnd/src/app/login/login.component.ts +++ b/FrontEnd/src/app/login/login.component.ts @@ -56,7 +56,7 @@ export class LoginComponent implements OnInit { loginWithUsos() { let array = [] as string[]; this.authenticationService.getUSOSTokens().subscribe(el => { - array = el.split('?'); + array = el.url.split('?'); array = array[1].split('&'); this.outh_token = array[0]; this.outh_token = this.outh_token.replace('oauth_token=', ''); @@ -64,7 +64,7 @@ export class LoginComponent implements OnInit { this.outh_token_secret = this.outh_token_secret.replace('oauth_token_secret=', ''); localStorage.setItem('outh_token', array[0].replace('oauth_token=', '')); localStorage.setItem('outh_token_secret', array[1].replace('oauth_token_secret=', '')); - window.location.href = el; + window.location.href = el.url; }); } }