Prevent creating multiple lives

This commit is contained in:
Chocobozzz 2022-08-12 10:43:50 +02:00
parent 9a3f72508c
commit 2f6e173002
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
2 changed files with 10 additions and 1 deletions

View File

@ -61,7 +61,7 @@
<div class="submit-container">
<my-button className="orange-button" i18n-label label="Update" icon="circle-tick"
(click)="updateSecondStep()"
[disabled]="!form.valid"
[disabled]="!form.valid || isUpdatingVideo === true"
></my-button>
</div>
</form>

View File

@ -27,6 +27,8 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView
firstStepPermanentLive: boolean
isInUpdateForm = false
isUpdatingVideo = false
isOrHasGoingLive = false
liveVideo: LiveVideo
@ -64,6 +66,9 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView
}
goLive () {
if (this.isOrHasGoingLive) return
this.isOrHasGoingLive = true
const name = 'Live'
const video: LiveVideoCreate = {
@ -115,6 +120,8 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView
async updateSecondStep () {
if (!await this.isFormValid()) return
this.isUpdatingVideo = true
const video = new VideoEdit()
video.patch(this.form.value)
video.id = this.videoId
@ -134,6 +141,8 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView
this.liveVideoService.updateLive(this.videoId, liveVideoUpdate)
]).subscribe({
next: () => {
this.isUpdatingVideo = false
this.notifier.success($localize`Live published.`)
this.router.navigateByUrl(Video.buildWatchUrl(video))