X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Blogin%2Flogin.component.ts;h=1e224db8cec5b4b29beba06d8e7126296fed60c5;hb=d0fbc9fd0a29c37f3ff9b99030351e90b276fe7d;hp=5f6aa842e1066599a67ca5a30edba39f36c0f5bd;hpb=0a8a79552cf59c800011c9f63eaa8658230acddc;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+login/login.component.ts b/client/src/app/+login/login.component.ts index 5f6aa842e..1e224db8c 100644 --- a/client/src/app/+login/login.component.ts +++ b/client/src/app/+login/login.component.ts @@ -9,7 +9,7 @@ import { FormReactive, FormReactiveService, InputTextComponent } from '@app/shar import { InstanceAboutAccordionComponent } from '@app/shared/shared-instance' import { NgbAccordion, NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap' import { getExternalAuthHref } from '@shared/core-utils' -import { RegisteredExternalAuthConfig, ServerConfig } from '@shared/models' +import { RegisteredExternalAuthConfig, ServerConfig, ServerErrorCode } from '@shared/models' @Component({ selector: 'my-login', @@ -85,8 +85,8 @@ export class LoginComponent extends FormReactive implements OnInit, AfterViewIni // Avoid undefined errors when accessing form error properties this.buildForm({ - username: LOGIN_USERNAME_VALIDATOR, - password: LOGIN_PASSWORD_VALIDATOR, + 'username': LOGIN_USERNAME_VALIDATOR, + 'password': LOGIN_PASSWORD_VALIDATOR, 'otp-token': { VALIDATORS: [], // Will be set dynamically MESSAGES: USER_OTP_TOKEN_VALIDATOR.MESSAGES @@ -208,8 +208,26 @@ The link will expire within 1 hour.` return } - if (err.message.indexOf('credentials are invalid') !== -1) this.error = $localize`Incorrect username or password.` - else if (err.message.indexOf('blocked') !== -1) this.error = $localize`Your account is blocked.` - else this.error = err.message + if (err.message.includes('credentials are invalid')) { + this.error = $localize`Incorrect username or password.` + return + } + + if (err.message.includes('blocked')) { + this.error = $localize`Your account is blocked.` + return + } + + if (err.body?.code === ServerErrorCode.ACCOUNT_WAITING_FOR_APPROVAL) { + this.error = $localize`This account is awaiting approval by moderators.` + return + } + + if (err.body?.code === ServerErrorCode.ACCOUNT_APPROVAL_REJECTED) { + this.error = $localize`Registration approval has been rejected for this account.` + return + } + + this.error = err.message } }