blob: c6fbb7538b19d24d938ed2fdb98318a6464f40e2 (
plain) (
tree)
|
|
import { I18n } from '@ngx-translate/i18n-polyfill'
import { AbstractControl, ValidationErrors, Validators } from '@angular/forms'
import { Injectable } from '@angular/core'
import { BuildFormValidator } from '@app/shared'
@Injectable()
export class VideoChangeOwnershipValidatorsService {
readonly USERNAME: BuildFormValidator
constructor (private i18n: I18n) {
this.USERNAME = {
VALIDATORS: [ Validators.required, this.localAccountValidator ],
MESSAGES: {
'required': this.i18n('The username is required.'),
'localAccountOnly': this.i18n('You can only transfer ownership to a local account')
}
}
}
localAccountValidator (control: AbstractControl): ValidationErrors {
if (control.value.includes('@')) {
return { 'localAccountOnly': true }
}
return null
}
}
|