From 68e24d727969a73a13e3c29b4d3bcfe50c3c52be Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 16 Feb 2018 17:24:47 +0100 Subject: Add loading bar when updating a video --- client/src/app/videos/+video-edit/video-update.component.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'client/src/app/videos/+video-edit/video-update.component.ts') diff --git a/client/src/app/videos/+video-edit/video-update.component.ts b/client/src/app/videos/+video-edit/video-update.component.ts index ad6452835..de34555ab 100644 --- a/client/src/app/videos/+video-edit/video-update.component.ts +++ b/client/src/app/videos/+video-edit/video-update.component.ts @@ -1,6 +1,7 @@ import { Component, OnInit } from '@angular/core' import { FormBuilder, FormGroup } from '@angular/forms' import { ActivatedRoute, Router } from '@angular/router' +import { LoadingBarService } from '@ngx-loading-bar/core' import { NotificationsService } from 'angular2-notifications' import 'rxjs/add/observable/forkJoin' import { VideoPrivacy } from '../../../../../shared/models/videos' @@ -21,6 +22,7 @@ import { VideoService } from '../../shared/video/video.service' export class VideoUpdateComponent extends FormReactive implements OnInit { video: VideoEdit + isUpdatingVideo = false form: FormGroup formErrors: { [ id: string ]: string } = {} validationMessages: ValidatorMessage = {} @@ -34,7 +36,8 @@ export class VideoUpdateComponent extends FormReactive implements OnInit { private notificationsService: NotificationsService, private serverService: ServerService, private videoService: VideoService, - private authService: AuthService + private authService: AuthService, + private loadingBar: LoadingBarService ) { super() } @@ -98,14 +101,19 @@ export class VideoUpdateComponent extends FormReactive implements OnInit { this.video.patch(this.form.value) + this.loadingBar.start() + this.isUpdatingVideo = true this.videoService.updateVideo(this.video) .subscribe( () => { + this.isUpdatingVideo = false + this.loadingBar.complete() this.notificationsService.success('Success', 'Video updated.') this.router.navigate([ '/videos/watch', this.video.uuid ]) }, err => { + this.isUpdatingVideo = false this.notificationsService.error('Error', err.message) console.error(err) } -- cgit v1.2.3