]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/videos/shared/video.service.ts
Client: better confirm box for a beautiful world
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / shared / video.service.ts
index b1f6880954d95a8ce309bd53260b140dde231f69..7094d9a34210e4e7498e426adcec6b240379de1c 100644 (file)
@@ -1,10 +1,13 @@
 import { Injectable } from '@angular/core';
 import { Http } from '@angular/http';
 import { Observable } from 'rxjs/Observable';
+import 'rxjs/add/operator/catch';
+import 'rxjs/add/operator/map';
 
 import { Search } from '../../shared';
 import { SortField } from './sort-field.type';
-import { AuthHttp, AuthService, RestExtractor, RestPagination, RestService, ResultList } from '../../shared';
+import { AuthService } from '../../core';
+import { AuthHttp, RestExtractor, RestPagination, RestService, ResultList } from '../../shared';
 import { Video } from './video.model';
 
 @Injectable()
@@ -52,6 +55,17 @@ export class VideoService {
                     .catch((res) => this.restExtractor.handleError(res));
   }
 
+  reportVideo(id: string, reason: string) {
+    const body = {
+      reason
+    };
+    const url = VideoService.BASE_VIDEO_URL + id + '/abuse';
+
+    return this.authHttp.post(url, body)
+                    .map(this.restExtractor.extractDataBool)
+                    .catch((res) => this.restExtractor.handleError(res));
+  }
+
   private extractVideos(result: ResultList) {
     const videosJson = result.data;
     const totalVideos = result.total;