]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/videos/shared/video.service.ts
Support roles with rights and add moderator role
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / shared / video.service.ts
index fe7f9108d3b6281c95dc753db15c863129348359..8fdc1f213fae0e55aeb205ba02a9a2df7243d895 100644 (file)
@@ -12,6 +12,8 @@ import {
   UserService
 } from '../../shared'
 import { Video } from './video.model'
+import { VideoDetails } from './video-details.model'
+import { VideoEdit } from './video-edit.model'
 import { VideoPagination } from './video-pagination.model'
 import {
   UserVideoRate,
@@ -20,6 +22,7 @@ import {
   VideoAbuseCreate,
   UserVideoRateUpdate,
   Video as VideoServerModel,
+  VideoDetails as VideoDetailsServerModel,
   ResultList
 } from '../../../../../shared'
 
@@ -33,13 +36,13 @@ export class VideoService {
     private restService: RestService
   ) {}
 
-  getVideo (uuid: string) {
-    return this.authHttp.get<VideoServerModel>(VideoService.BASE_VIDEO_URL + uuid)
-                        .map(videoHash => new Video(videoHash))
+  getVideo (uuid: string): Observable<VideoDetails> {
+    return this.authHttp.get<VideoDetailsServerModel>(VideoService.BASE_VIDEO_URL + uuid)
+                        .map(videoHash => new VideoDetails(videoHash))
                         .catch((res) => this.restExtractor.handleError(res))
   }
 
-  updateVideo (video: Video) {
+  updateVideo (video: VideoEdit) {
     const language = video.language ? video.language : null
 
     const body: VideoUpdate = {
@@ -52,13 +55,13 @@ export class VideoService {
       nsfw: video.nsfw
     }
 
-    return this.authHttp.put(`${VideoService.BASE_VIDEO_URL}/${video.id}`, body)
+    return this.authHttp.put(VideoService.BASE_VIDEO_URL + video.id, body)
                         .map(this.restExtractor.extractDataBool)
                         .catch(this.restExtractor.handleError)
   }
 
   uploadVideo (video: FormData) {
-    const req = new HttpRequest('POST', `${VideoService.BASE_VIDEO_URL}/upload`, video, { reportProgress: true })
+    const req = new HttpRequest('POST', VideoService.BASE_VIDEO_URL + 'upload', video, { reportProgress: true })
 
     return this.authHttp.request(req)
                         .catch(this.restExtractor.handleError)
@@ -116,7 +119,7 @@ export class VideoService {
   }
 
   getUserVideoRating (id: number): Observable<UserVideoRate> {
-    const url = UserService.BASE_USERS_URL + '/me/videos/' + id + '/rating'
+    const url = UserService.BASE_USERS_URL + 'me/videos/' + id + '/rating'
 
     return this.authHttp.get(url)
                         .catch(res => this.restExtractor.handleError(res))