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