From 6f79be110d31f4f751b989fe36b9de0d0f259fe0 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 27 Dec 2019 14:41:41 +0100 Subject: Fix video support field update --- .../+video-edit/shared/video-edit.component.ts | 30 ++++++++++++---------- 1 file changed, 17 insertions(+), 13 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 982e071ad..15073fc44 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 @@ -248,28 +248,32 @@ export class VideoEditComponent implements OnInit, OnDestroy { .subscribe( newChannelId => { const oldChannelId = parseInt(this.form.value[ 'channelId' ], 10) - const currentSupport = this.form.value[ 'support' ] // Not initialized yet if (isNaN(newChannelId)) return const newChannel = this.userVideoChannels.find(c => c.id === newChannelId) if (!newChannel) return - // First time we set the channel? - if (isNaN(oldChannelId)) return this.updateSupportField(newChannel.support) - const oldChannel = this.userVideoChannels.find(c => c.id === oldChannelId) + // Wait support field update + setTimeout(() => { + const currentSupport = this.form.value[ 'support' ] - if (!newChannel || !oldChannel) { - console.error('Cannot find new or old channel.') - return - } + // First time we set the channel? + if (isNaN(oldChannelId) && !currentSupport) return this.updateSupportField(newChannel.support) + + const oldChannel = this.userVideoChannels.find(c => c.id === oldChannelId) + if (!newChannel || !oldChannel) { + console.error('Cannot find new or old channel.') + return + } - // If the current support text is not the same than the old channel, the user updated it. - // We don't want the user to lose his text, so stop here - if (currentSupport && currentSupport !== oldChannel.support) return + // If the current support text is not the same than the old channel, the user updated it. + // We don't want the user to lose his text, so stop here + if (currentSupport && currentSupport !== oldChannel.support) return - // Update the support text with our new channel - this.updateSupportField(newChannel.support) + // Update the support text with our new channel + this.updateSupportField(newChannel.support) + }) } ) } -- cgit v1.2.3