From ec769c89fdcbcaf2d15de8d211d3ede3b6f69c1a Mon Sep 17 00:00:00 2001 From: BO41 Date: Sun, 23 Sep 2018 16:37:48 +0200 Subject: add redirect after login (#1110) --- client/src/app/core/auth/auth.service.ts | 3 +++ client/src/app/core/routing/login-guard.service.ts | 2 ++ client/src/app/login/login.component.ts | 13 ++++++++++++- 3 files changed, 17 insertions(+), 1 deletion(-) (limited to 'client/src/app') diff --git a/client/src/app/core/auth/auth.service.ts b/client/src/app/core/auth/auth.service.ts index 88ea89639..8ff5713a1 100644 --- a/client/src/app/core/auth/auth.service.ts +++ b/client/src/app/core/auth/auth.service.ts @@ -38,6 +38,7 @@ export class AuthService { loginChangedSource: Observable userInformationLoaded = new ReplaySubject(1) hotkeys: Hotkey[] + redirectUrl: string private clientId: string = peertubeLocalStorage.getItem(AuthService.LOCAL_STORAGE_OAUTH_CLIENT_KEYS.CLIENT_ID) private clientSecret: string = peertubeLocalStorage.getItem(AuthService.LOCAL_STORAGE_OAUTH_CLIENT_KEYS.CLIENT_SECRET) @@ -177,6 +178,8 @@ export class AuthService { this.setStatus(AuthStatus.LoggedOut) this.hotkeysService.remove(this.hotkeys) + + this.redirectUrl = null } refreshAccessToken () { diff --git a/client/src/app/core/routing/login-guard.service.ts b/client/src/app/core/routing/login-guard.service.ts index 18bc41ca6..40ff8f505 100644 --- a/client/src/app/core/routing/login-guard.service.ts +++ b/client/src/app/core/routing/login-guard.service.ts @@ -20,6 +20,8 @@ export class LoginGuard implements CanActivate, CanActivateChild { canActivate (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) { if (this.auth.isLoggedIn() === true) return true + this.auth.redirectUrl = state.url + this.router.navigate([ '/login' ]) return false } diff --git a/client/src/app/login/login.component.ts b/client/src/app/login/login.component.ts index 4bae3ae5c..7553e6456 100644 --- a/client/src/app/login/login.component.ts +++ b/client/src/app/login/login.component.ts @@ -8,6 +8,7 @@ import { I18n } from '@ngx-translate/i18n-polyfill' import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' import { LoginValidatorsService } from '@app/shared/forms/form-validators/login-validators.service' import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap' +import { Router } from '@angular/router' @Component({ selector: 'my-login', @@ -26,6 +27,7 @@ export class LoginComponent extends FormReactive implements OnInit { private openedForgotPasswordModal: NgbModalRef constructor ( + public router: Router, protected formValidatorService: FormValidatorService, private modalService: NgbModal, private loginValidatorsService: LoginValidatorsService, @@ -59,7 +61,7 @@ export class LoginComponent extends FormReactive implements OnInit { this.authService.login(username, password) .subscribe( - () => this.redirectService.redirectToHomepage(), + () => this.redirect(), err => { if (err.message.indexOf('credentials are invalid') !== -1) this.error = this.i18n('Incorrect username or password.') @@ -69,6 +71,15 @@ export class LoginComponent extends FormReactive implements OnInit { ) } + redirect () { + const redirect = this.authService.redirectUrl + if (redirect) { + this.router.navigate([ redirect ]) + } else { + this.redirectService.redirectToHomepage() + } + } + askResetPassword () { this.userService.askResetPassword(this.forgotPasswordEmail) .subscribe( -- cgit v1.2.3 From bc144e16ce5924e2f840e4df4099d8ea7b56edc4 Mon Sep 17 00:00:00 2001 From: Rigel Kent Date: Sun, 23 Sep 2018 18:33:53 +0200 Subject: append my-help popover to body instead of parent object --- client/src/app/shared/misc/help.component.html | 1 + 1 file changed, 1 insertion(+) (limited to 'client/src/app') diff --git a/client/src/app/shared/misc/help.component.html b/client/src/app/shared/misc/help.component.html index 5b3ddde1d..28ccb1e26 100644 --- a/client/src/app/shared/misc/help.component.html +++ b/client/src/app/shared/misc/help.component.html @@ -15,6 +15,7 @@ Date: Sun, 23 Sep 2018 19:43:41 +0200 Subject: add url field to download modal --- .../modal/video-download.component.html | 18 ++++++++++++++---- .../modal/video-download.component.scss | 8 +++++++- .../+video-watch/modal/video-download.component.ts | 21 +++++++++++++++++---- 3 files changed, 38 insertions(+), 9 deletions(-) (limited to 'client/src/app') diff --git a/client/src/app/videos/+video-watch/modal/video-download.component.html b/client/src/app/videos/+video-watch/modal/video-download.component.html index edd054123..f46f92a17 100644 --- a/client/src/app/videos/+video-watch/modal/video-download.component.html +++ b/client/src/app/videos/+video-watch/modal/video-download.component.html @@ -5,10 +5,20 @@