diff options
Diffstat (limited to 'client/src/app/login')
-rw-r--r-- | client/src/app/login/login.component.html | 12 | ||||
-rw-r--r-- | client/src/app/login/login.component.scss | 4 | ||||
-rw-r--r-- | client/src/app/login/login.component.ts | 14 |
3 files changed, 26 insertions, 4 deletions
diff --git a/client/src/app/login/login.component.html b/client/src/app/login/login.component.html index 9bbeab3be..162f44ded 100644 --- a/client/src/app/login/login.component.html +++ b/client/src/app/login/login.component.html | |||
@@ -3,6 +3,18 @@ | |||
3 | Login | 3 | Login |
4 | </div> | 4 | </div> |
5 | 5 | ||
6 | <div class="alert alert-warning" *ngIf="from.upload" role="alert"> | ||
7 | <h6 class="alert-heading" i18n> | ||
8 | If you are looking for an account… | ||
9 | </h6> | ||
10 | <div i18n> | ||
11 | Currently this instance doesn't allow for user registration, but you can find an instance | ||
12 | that gives you the possibility to sign up for an account and upload your videos there. | ||
13 | Find yours among multiple instances at <a class="alert-link" [href]="instancesIndexUrl" target="_blank" rel="noopener noreferrer">{{ instancesIndexUrl }}</a> | ||
14 | , a directory of instances recommended by this instance. | ||
15 | </div> | ||
16 | </div> | ||
17 | |||
6 | <div *ngIf="error" class="alert alert-danger">{{ error }} | 18 | <div *ngIf="error" class="alert alert-danger">{{ error }} |
7 | <span *ngIf="error === 'User email is not verified.'"> <a i18n routerLink="/verify-account/ask-send-email">Request new verification email.</a></span> | 19 | <span *ngIf="error === 'User email is not verified.'"> <a i18n routerLink="/verify-account/ask-send-email">Request new verification email.</a></span> |
8 | </div> | 20 | </div> |
diff --git a/client/src/app/login/login.component.scss b/client/src/app/login/login.component.scss index 8541a2681..8ac231475 100644 --- a/client/src/app/login/login.component.scss +++ b/client/src/app/login/login.component.scss | |||
@@ -20,8 +20,10 @@ input[type=submit] { | |||
20 | .create-an-account, .forgot-password-button { | 20 | .create-an-account, .forgot-password-button { |
21 | color: var(--mainForegroundColor); | 21 | color: var(--mainForegroundColor); |
22 | cursor: pointer; | 22 | cursor: pointer; |
23 | transition: opacity cubic-bezier(0.39, 0.575, 0.565, 1); | ||
23 | 24 | ||
24 | &:hover { | 25 | &:hover { |
25 | text-decoration: underline !important; | 26 | text-decoration: none !important; |
27 | opacity: .7 !important; | ||
26 | } | 28 | } |
27 | } | 29 | } |
diff --git a/client/src/app/login/login.component.ts b/client/src/app/login/login.component.ts index ffadc9aa4..1394d6b58 100644 --- a/client/src/app/login/login.component.ts +++ b/client/src/app/login/login.component.ts | |||
@@ -1,5 +1,5 @@ | |||
1 | import { Component, ElementRef, OnInit, ViewChild } from '@angular/core' | 1 | import { Component, ElementRef, OnInit, ViewChild } from '@angular/core' |
2 | import { Notifier, RedirectService, ServerService } from '@app/core' | 2 | import { Notifier, RedirectService } from '@app/core' |
3 | import { UserService } from '@app/shared' | 3 | import { UserService } from '@app/shared' |
4 | import { AuthService } from '../core' | 4 | import { AuthService } from '../core' |
5 | import { FormReactive } from '../shared' | 5 | import { FormReactive } from '../shared' |
@@ -7,8 +7,8 @@ import { I18n } from '@ngx-translate/i18n-polyfill' | |||
7 | import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' | 7 | import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' |
8 | import { LoginValidatorsService } from '@app/shared/forms/form-validators/login-validators.service' | 8 | import { LoginValidatorsService } from '@app/shared/forms/form-validators/login-validators.service' |
9 | import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap' | 9 | import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap' |
10 | import { ActivatedRoute, Router } from '@angular/router' | 10 | import { ActivatedRoute } from '@angular/router' |
11 | import { ServerConfig } from '@shared/models' | 11 | import { ServerConfig } from '@shared/models/server/server-config.model' |
12 | 12 | ||
13 | @Component({ | 13 | @Component({ |
14 | selector: 'my-login', | 14 | selector: 'my-login', |
@@ -22,6 +22,9 @@ export class LoginComponent extends FormReactive implements OnInit { | |||
22 | 22 | ||
23 | error: string = null | 23 | error: string = null |
24 | forgotPasswordEmail = '' | 24 | forgotPasswordEmail = '' |
25 | from = { | ||
26 | upload: false | ||
27 | } | ||
25 | 28 | ||
26 | private openedForgotPasswordModal: NgbModalRef | 29 | private openedForgotPasswordModal: NgbModalRef |
27 | private serverConfig: ServerConfig | 30 | private serverConfig: ServerConfig |
@@ -44,12 +47,17 @@ export class LoginComponent extends FormReactive implements OnInit { | |||
44 | return this.serverConfig.signup.allowed === true | 47 | return this.serverConfig.signup.allowed === true |
45 | } | 48 | } |
46 | 49 | ||
50 | get instancesIndexUrl () { | ||
51 | return this.serverConfig.followings.instance.autoFollowIndex.indexUrl || 'https://instances.joinpeertube.org' | ||
52 | } | ||
53 | |||
47 | isEmailDisabled () { | 54 | isEmailDisabled () { |
48 | return this.serverConfig.email.enabled === false | 55 | return this.serverConfig.email.enabled === false |
49 | } | 56 | } |
50 | 57 | ||
51 | ngOnInit () { | 58 | ngOnInit () { |
52 | this.serverConfig = this.route.snapshot.data.serverConfig | 59 | this.serverConfig = this.route.snapshot.data.serverConfig |
60 | this.from.upload = Boolean(this.route.snapshot.paramMap.get('fromUpload')) | ||
53 | 61 | ||
54 | this.buildForm({ | 62 | this.buildForm({ |
55 | username: this.loginValidatorsService.LOGIN_USERNAME, | 63 | username: this.loginValidatorsService.LOGIN_USERNAME, |