]>
Commit | Line | Data |
---|---|---|
74d63469 | 1 | import { Injectable } from '@angular/core' |
66357162 | 2 | import { AbstractControl, ValidationErrors, Validators } from '@angular/forms' |
67ed6552 | 3 | import { BuildFormValidator } from './form-validator.service' |
74d63469 GR |
4 | |
5 | @Injectable() | |
6 | export class VideoChangeOwnershipValidatorsService { | |
7 | readonly USERNAME: BuildFormValidator | |
8 | ||
66357162 | 9 | constructor () { |
74d63469 | 10 | this.USERNAME = { |
9ccff238 | 11 | VALIDATORS: [ Validators.required, this.localAccountValidator ], |
74d63469 | 12 | MESSAGES: { |
66357162 C |
13 | 'required': $localize`The username is required.`, |
14 | 'localAccountOnly': $localize`You can only transfer ownership to a local account` | |
74d63469 GR |
15 | } |
16 | } | |
17 | } | |
9ccff238 LD |
18 | |
19 | localAccountValidator (control: AbstractControl): ValidationErrors { | |
20 | if (control.value.includes('@')) { | |
21 | return { 'localAccountOnly': true } | |
22 | } | |
23 | ||
24 | return null | |
25 | } | |
74d63469 | 26 | } |