diff options
4 files changed, 21 insertions, 2 deletions
diff --git a/client/src/app/videos/video-add/video-add.component.html b/client/src/app/videos/video-add/video-add.component.html index 80d229cb8..cbe274e8a 100644 --- a/client/src/app/videos/video-add/video-add.component.html +++ b/client/src/app/videos/video-add/video-add.component.html | |||
@@ -1,5 +1,7 @@ | |||
1 | <h3>Upload a video</h3> | 1 | <h3>Upload a video</h3> |
2 | 2 | ||
3 | <div *ngIf="error" class="alert alert-danger">{{ error }}</div> | ||
4 | |||
3 | <form (ngSubmit)="uploadFile()" #videoForm="ngForm"> | 5 | <form (ngSubmit)="uploadFile()" #videoForm="ngForm"> |
4 | <div class="form-group"> | 6 | <div class="form-group"> |
5 | <label for="name">Video name</label> | 7 | <label for="name">Video name</label> |
diff --git a/client/src/app/videos/video-add/video-add.component.ts b/client/src/app/videos/video-add/video-add.component.ts index 8df4f951b..144879a54 100644 --- a/client/src/app/videos/video-add/video-add.component.ts +++ b/client/src/app/videos/video-add/video-add.component.ts | |||
@@ -18,6 +18,7 @@ import { AuthService, User } from '../../shared'; | |||
18 | }) | 18 | }) |
19 | 19 | ||
20 | export class VideoAddComponent implements OnInit { | 20 | export class VideoAddComponent implements OnInit { |
21 | error: string = null; | ||
21 | fileToUpload: any; | 22 | fileToUpload: any; |
22 | progressBar: { value: number; max: number; } = { value: 0, max: 0 }; | 23 | progressBar: { value: number; max: number; } = { value: 0, max: 0 }; |
23 | user: User; | 24 | user: User; |
@@ -57,11 +58,23 @@ export class VideoAddComponent implements OnInit { | |||
57 | 58 | ||
58 | // Print all the videos once it's finished | 59 | // Print all the videos once it's finished |
59 | this.router.navigate(['VideosList']); | 60 | this.router.navigate(['VideosList']); |
61 | }, | ||
62 | |||
63 | fail: (e, data) => { | ||
64 | const xhr = data.jqXHR; | ||
65 | if (xhr.status === 400) { | ||
66 | this.error = xhr.responseText; | ||
67 | } else { | ||
68 | this.error = 'Unknow error'; | ||
69 | } | ||
70 | |||
71 | console.error(data); | ||
60 | } | 72 | } |
61 | }); | 73 | }); |
62 | } | 74 | } |
63 | 75 | ||
64 | uploadFile() { | 76 | uploadFile() { |
77 | this.error = null; | ||
65 | this.form.formData = jQuery(this.elementRef.nativeElement).find('form').serializeArray(); | 78 | this.form.formData = jQuery(this.elementRef.nativeElement).find('form').serializeArray(); |
66 | this.form.headers = this.authService.getRequestHeader().toJSON(); | 79 | this.form.headers = this.authService.getRequestHeader().toJSON(); |
67 | this.form.submit(); | 80 | this.form.submit(); |
diff --git a/client/src/app/videos/video-list/video-list.component.html b/client/src/app/videos/video-list/video-list.component.html index 155025b5e..00392a81f 100644 --- a/client/src/app/videos/video-list/video-list.component.html +++ b/client/src/app/videos/video-list/video-list.component.html | |||
@@ -1,5 +1,9 @@ | |||
1 | <div class="row videos-info"> | 1 | <div class="row videos-info"> |
2 | <div class="col-md-9 videos-total-results"> {{ pagination.total }} videos</div> | 2 | <div class="col-md-9 videos-total-results"> |
3 | {{ pagination.total }} videos | ||
4 | |||
5 | <my-loader [loading]="loading"></my-loader> | ||
6 | </div> | ||
3 | <my-video-sort class="col-md-3" [currentSort]="sort" (sort)="onSort($event)"></my-video-sort> | 7 | <my-video-sort class="col-md-3" [currentSort]="sort" (sort)="onSort($event)"></my-video-sort> |
4 | </div> | 8 | </div> |
5 | 9 | ||
diff --git a/server/middlewares/reqValidators/videos.js b/server/middlewares/reqValidators/videos.js index d444c9f0a..10b6d39c6 100644 --- a/server/middlewares/reqValidators/videos.js +++ b/server/middlewares/reqValidators/videos.js | |||
@@ -30,7 +30,7 @@ function videosAdd (req, res, next) { | |||
30 | } | 30 | } |
31 | 31 | ||
32 | if (duration > constants.MAXIMUM_VIDEO_DURATION) { | 32 | if (duration > constants.MAXIMUM_VIDEO_DURATION) { |
33 | return res.status(400).send('Duration of the video file is too big (' + constants.MAXIMUM_VIDEO_DURATION + ').') | 33 | return res.status(400).send('Duration of the video file is too big (max: ' + constants.MAXIMUM_VIDEO_DURATION + 's).') |
34 | } | 34 | } |
35 | 35 | ||
36 | videoFile.duration = duration | 36 | videoFile.duration = duration |