VIDEO_CHANNEL_DISPLAY_NAME_VALIDATOR,
VIDEO_CHANNEL_SUPPORT_VALIDATOR
} from '@app/shared/form-validators/video-channel-validators'
-import { FormValidatorService } from '@app/shared/shared-forms'
+import { FormReactiveService } from '@app/shared/shared-forms'
import { VideoChannel, VideoChannelService } from '@app/shared/shared-main'
import { HTMLServerConfig, VideoChannelUpdate } from '@shared/models'
import { VideoChannelEdit } from './video-channel-edit'
+import { shallowCopy } from '@shared/core-utils'
@Component({
selector: 'my-video-channel-update',
private serverConfig: HTMLServerConfig
constructor (
- protected formValidatorService: FormValidatorService,
+ protected formReactiveService: FormReactiveService,
private authService: AuthService,
private notifier: Notifier,
private route: ActivatedRoute,
this.buildForm({
'display-name': VIDEO_CHANNEL_DISPLAY_NAME_VALIDATOR,
- description: VIDEO_CHANNEL_DESCRIPTION_VALIDATOR,
- support: VIDEO_CHANNEL_SUPPORT_VALIDATOR,
- bulkVideosSupportUpdate: null
+ 'description': VIDEO_CHANNEL_DESCRIPTION_VALIDATOR,
+ 'support': VIDEO_CHANNEL_SUPPORT_VALIDATOR,
+ 'bulkVideosSupportUpdate': null
})
this.paramsSub = this.route.params.subscribe(routeParams => {
this.form.patchValue({
'display-name': videoChannelToUpdate.displayName,
- description: videoChannelToUpdate.description,
- support: videoChannelToUpdate.support
+ 'description': videoChannelToUpdate.description,
+ 'support': videoChannelToUpdate.support
})
},
this.notifier.success($localize`Avatar changed.`)
this.videoChannel.updateAvatar(data.avatars)
+
+ // So my-actor-avatar component detects changes
+ this.videoChannel = shallowCopy(this.videoChannel)
},
error: (err: HttpErrorResponse) => genericUploadErrorHandler({
this.notifier.success($localize`Avatar deleted.`)
this.videoChannel.resetAvatar()
+
+ // So my-actor-avatar component detects changes
+ this.videoChannel = shallowCopy(this.videoChannel)
},
error: err => this.notifier.error(err.message)