]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/shared/shared-forms/form-validators/video-channel-validators.service.ts
Update translations
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-forms / form-validators / video-channel-validators.service.ts
CommitLineData
e309822b 1import { Injectable } from '@angular/core'
66357162 2import { Validators } from '@angular/forms'
67ed6552 3import { BuildFormValidator } from './form-validator.service'
e309822b
C
4
5@Injectable()
6export class VideoChannelValidatorsService {
8a19bee1 7 readonly VIDEO_CHANNEL_NAME: BuildFormValidator
e309822b
C
8 readonly VIDEO_CHANNEL_DISPLAY_NAME: BuildFormValidator
9 readonly VIDEO_CHANNEL_DESCRIPTION: BuildFormValidator
10 readonly VIDEO_CHANNEL_SUPPORT: BuildFormValidator
11
66357162 12 constructor () {
8a19bee1
C
13 this.VIDEO_CHANNEL_NAME = {
14 VALIDATORS: [
15 Validators.required,
d0ce42c1
BY
16 Validators.minLength(1),
17 Validators.maxLength(50),
6ebfaf67 18 Validators.pattern(/^[a-z0-9][a-z0-9._]*$/)
8a19bee1
C
19 ],
20 MESSAGES: {
66357162
C
21 'required': $localize`Name is required.`,
22 'minlength': $localize`Name must be at least 1 character long.`,
23 'maxlength': $localize`Name cannot be more than 50 characters long.`,
24 'pattern': $localize`Name should be lowercase alphanumeric; dots and underscores are allowed.`
8a19bee1
C
25 }
26 }
27
e309822b
C
28 this.VIDEO_CHANNEL_DISPLAY_NAME = {
29 VALIDATORS: [
30 Validators.required,
d0ce42c1
BY
31 Validators.minLength(1),
32 Validators.maxLength(50)
e309822b
C
33 ],
34 MESSAGES: {
66357162
C
35 'required': $localize`Display name is required.`,
36 'minlength': $localize`Display name must be at least 1 character long.`,
37 'maxlength': $localize`Display name cannot be more than 50 characters long.`
e309822b
C
38 }
39 }
40
41 this.VIDEO_CHANNEL_DESCRIPTION = {
42 VALIDATORS: [
43 Validators.minLength(3),
d23e6a1c 44 Validators.maxLength(1000)
e309822b
C
45 ],
46 MESSAGES: {
66357162
C
47 'minlength': $localize`Description must be at least 3 characters long.`,
48 'maxlength': $localize`Description cannot be more than 1000 characters long.`
e309822b
C
49 }
50 }
51
52 this.VIDEO_CHANNEL_SUPPORT = {
53 VALIDATORS: [
54 Validators.minLength(3),
d23e6a1c 55 Validators.maxLength(1000)
e309822b
C
56 ],
57 MESSAGES: {
66357162
C
58 'minlength': $localize`Support text must be at least 3 characters long.`,
59 'maxlength': $localize`Support text cannot be more than 1000 characters long`
e309822b
C
60 }
61 }
62 }
63}