diff options
Diffstat (limited to 'client/src/app/videos/+video-edit')
-rw-r--r-- | client/src/app/videos/+video-edit/shared/video-edit.component.ts | 43 |
1 files changed, 18 insertions, 25 deletions
diff --git a/client/src/app/videos/+video-edit/shared/video-edit.component.ts b/client/src/app/videos/+video-edit/shared/video-edit.component.ts index cd2a26ae3..61515c0b0 100644 --- a/client/src/app/videos/+video-edit/shared/video-edit.component.ts +++ b/client/src/app/videos/+video-edit/shared/video-edit.component.ts | |||
@@ -1,20 +1,9 @@ | |||
1 | import { Component, Input, OnInit } from '@angular/core' | 1 | import { Component, Input, OnInit } from '@angular/core' |
2 | import { FormGroup } from '@angular/forms' | 2 | import { FormGroup, ValidatorFn } from '@angular/forms' |
3 | import { ActivatedRoute, Router } from '@angular/router' | 3 | import { ActivatedRoute, Router } from '@angular/router' |
4 | import { VIDEO_SUPPORT } from '@app/shared' | 4 | import { FormReactiveValidationMessages, VideoValidatorsService } from '@app/shared' |
5 | import { NotificationsService } from 'angular2-notifications' | 5 | import { NotificationsService } from 'angular2-notifications' |
6 | import { ServerService } from '../../../core/server' | 6 | import { ServerService } from '../../../core/server' |
7 | import { VIDEO_CHANNEL } from '../../../shared/forms/form-validators' | ||
8 | import { ValidatorMessage } from '../../../shared/forms/form-validators/validator-message' | ||
9 | import { | ||
10 | VIDEO_CATEGORY, | ||
11 | VIDEO_DESCRIPTION, | ||
12 | VIDEO_LANGUAGE, | ||
13 | VIDEO_LICENCE, | ||
14 | VIDEO_NAME, | ||
15 | VIDEO_PRIVACY, | ||
16 | VIDEO_TAGS | ||
17 | } from '../../../shared/forms/form-validators/video' | ||
18 | import { VideoEdit } from '../../../shared/video/video-edit.model' | 7 | import { VideoEdit } from '../../../shared/video/video-edit.model' |
19 | import { map } from 'rxjs/operators' | 8 | import { map } from 'rxjs/operators' |
20 | import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' | 9 | import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' |
@@ -28,7 +17,7 @@ import { FormValidatorService } from '@app/shared/forms/form-validators/form-val | |||
28 | export class VideoEditComponent implements OnInit { | 17 | export class VideoEditComponent implements OnInit { |
29 | @Input() form: FormGroup | 18 | @Input() form: FormGroup |
30 | @Input() formErrors: { [ id: string ]: string } = {} | 19 | @Input() formErrors: { [ id: string ]: string } = {} |
31 | @Input() validationMessages: ValidatorMessage = {} | 20 | @Input() validationMessages: FormReactiveValidationMessages = {} |
32 | @Input() videoPrivacies = [] | 21 | @Input() videoPrivacies = [] |
33 | @Input() userVideoChannels: { id: number, label: string, support: string }[] = [] | 22 | @Input() userVideoChannels: { id: number, label: string, support: string }[] = [] |
34 | 23 | ||
@@ -37,18 +26,22 @@ export class VideoEditComponent implements OnInit { | |||
37 | videoLanguages = [] | 26 | videoLanguages = [] |
38 | video: VideoEdit | 27 | video: VideoEdit |
39 | 28 | ||
40 | tagValidators = VIDEO_TAGS.VALIDATORS | 29 | tagValidators: ValidatorFn[] |
41 | tagValidatorsMessages = VIDEO_TAGS.MESSAGES | 30 | tagValidatorsMessages: { [ name: string ]: string } |
42 | 31 | ||
43 | error: string = null | 32 | error: string = null |
44 | 33 | ||
45 | constructor ( | 34 | constructor ( |
46 | private formValidatorService: FormValidatorService, | 35 | private formValidatorService: FormValidatorService, |
36 | private videoValidatorsService: VideoValidatorsService, | ||
47 | private route: ActivatedRoute, | 37 | private route: ActivatedRoute, |
48 | private router: Router, | 38 | private router: Router, |
49 | private notificationsService: NotificationsService, | 39 | private notificationsService: NotificationsService, |
50 | private serverService: ServerService | 40 | private serverService: ServerService |
51 | ) { } | 41 | ) { |
42 | this.tagValidators = this.videoValidatorsService.VIDEO_TAGS.VALIDATORS | ||
43 | this.tagValidatorsMessages = this.videoValidatorsService.VIDEO_TAGS.MESSAGES | ||
44 | } | ||
52 | 45 | ||
53 | updateForm () { | 46 | updateForm () { |
54 | const defaultValues = { | 47 | const defaultValues = { |
@@ -57,19 +50,19 @@ export class VideoEditComponent implements OnInit { | |||
57 | tags: [] | 50 | tags: [] |
58 | } | 51 | } |
59 | const obj = { | 52 | const obj = { |
60 | name: VIDEO_NAME, | 53 | name: this.videoValidatorsService.VIDEO_NAME, |
61 | privacy: VIDEO_PRIVACY, | 54 | privacy: this.videoValidatorsService.VIDEO_PRIVACY, |
62 | channelId: VIDEO_CHANNEL, | 55 | channelId: this.videoValidatorsService.VIDEO_CHANNEL, |
63 | nsfw: null, | 56 | nsfw: null, |
64 | commentsEnabled: null, | 57 | commentsEnabled: null, |
65 | category: VIDEO_CATEGORY, | 58 | category: this.videoValidatorsService.VIDEO_CATEGORY, |
66 | licence: VIDEO_LICENCE, | 59 | licence: this.videoValidatorsService.VIDEO_LICENCE, |
67 | language: VIDEO_LANGUAGE, | 60 | language: this.videoValidatorsService.VIDEO_LANGUAGE, |
68 | description: VIDEO_DESCRIPTION, | 61 | description: this.videoValidatorsService.VIDEO_DESCRIPTION, |
69 | tags: null, | 62 | tags: null, |
70 | thumbnailfile: null, | 63 | thumbnailfile: null, |
71 | previewfile: null, | 64 | previewfile: null, |
72 | support: VIDEO_SUPPORT | 65 | support: this.videoValidatorsService.VIDEO_SUPPORT |
73 | } | 66 | } |
74 | 67 | ||
75 | this.formValidatorService.updateForm( | 68 | this.formValidatorService.updateForm( |