[DURACOM-204][#2622] Makes forgot-password link removable

This commit is contained in:
Vincenzo Mecca
2023-11-10 16:13:20 +01:00
parent 684846ae36
commit 91b4d3dcd1
3 changed files with 31 additions and 12 deletions

View File

@@ -1,9 +1,9 @@
import { map } from 'rxjs/operators';
import { combineLatest, Observable, shareReplay } from 'rxjs';
import { filter, map } from 'rxjs/operators';
import { Component, Inject, OnInit } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
import { select, Store } from '@ngrx/store';
import { Observable } from 'rxjs';
import { AuthenticateAction, ResetAuthenticationMessagesAction } from '../../../../core/auth/auth.actions';
import { getAuthenticationError, getAuthenticationInfo, } from '../../../../core/auth/selectors';
@@ -73,6 +73,17 @@ export class LogInPasswordComponent implements OnInit {
*/
public canRegister$: Observable<boolean>;
/**
* Whether or not the current user (or anonymous) is authorized to register an account
*/
canForgot$: Observable<boolean>;
/**
* Shows the divider only if contains at least one link to show
*/
canShowDivider$: Observable<boolean>;
constructor(
@Inject('authMethodProvider') public injectedAuthMethodModel: AuthMethod,
@Inject('isStandalonePage') public isStandalonePage: boolean,
@@ -114,8 +125,15 @@ export class LogInPasswordComponent implements OnInit {
return message;
})
);
this.canRegister$ = this.authorizationService.isAuthorized(FeatureID.EPersonRegistration);
this.canRegister$ = this.authorizationService.isAuthorized(FeatureID.EPersonRegistration).pipe(shareReplay(1));
this.canForgot$ = this.authorizationService.isAuthorized(FeatureID.EPersonForgotPassword).pipe(shareReplay(1));
this.canShowDivider$ =
combineLatest([this.canRegister$, this.canForgot$])
.pipe(
map(([canRegister, canForgot]) => canRegister || canForgot),
filter(Boolean)
);
}
getRegisterRoute() {