diff options
Diffstat (limited to 'client/src/app/shared/forms/form-validators')
-rw-r--r-- | client/src/app/shared/forms/form-validators/video-playlist-validators.service.ts | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/client/src/app/shared/forms/form-validators/video-playlist-validators.service.ts b/client/src/app/shared/forms/form-validators/video-playlist-validators.service.ts index 726084b47..a2c9a5368 100644 --- a/client/src/app/shared/forms/form-validators/video-playlist-validators.service.ts +++ b/client/src/app/shared/forms/form-validators/video-playlist-validators.service.ts | |||
@@ -1,7 +1,8 @@ | |||
1 | import { I18n } from '@ngx-translate/i18n-polyfill' | 1 | import { I18n } from '@ngx-translate/i18n-polyfill' |
2 | import { Validators } from '@angular/forms' | 2 | import { AbstractControl, FormControl, Validators } from '@angular/forms' |
3 | import { Injectable } from '@angular/core' | 3 | import { Injectable } from '@angular/core' |
4 | import { BuildFormValidator } from '@app/shared' | 4 | import { BuildFormValidator } from '@app/shared' |
5 | import { VideoPlaylistPrivacy } from '@shared/models' | ||
5 | 6 | ||
6 | @Injectable() | 7 | @Injectable() |
7 | export class VideoPlaylistValidatorsService { | 8 | export class VideoPlaylistValidatorsService { |
@@ -46,7 +47,20 @@ export class VideoPlaylistValidatorsService { | |||
46 | 47 | ||
47 | this.VIDEO_PLAYLIST_CHANNEL_ID = { | 48 | this.VIDEO_PLAYLIST_CHANNEL_ID = { |
48 | VALIDATORS: [ ], | 49 | VALIDATORS: [ ], |
49 | MESSAGES: { } | 50 | MESSAGES: { |
51 | 'required': this.i18n('The channel is required when the playlist is public.') | ||
52 | } | ||
53 | } | ||
54 | } | ||
55 | |||
56 | setChannelValidator (channelControl: AbstractControl, privacy: VideoPlaylistPrivacy) { | ||
57 | if (privacy.toString() === VideoPlaylistPrivacy.PUBLIC.toString()) { | ||
58 | channelControl.setValidators([ Validators.required ]) | ||
59 | } else { | ||
60 | channelControl.setValidators(null) | ||
50 | } | 61 | } |
62 | |||
63 | channelControl.markAsDirty() | ||
64 | channelControl.updateValueAndValidity() | ||
51 | } | 65 | } |
52 | } | 66 | } |