]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+my-library/my-video-imports/my-video-imports.component.ts
Prevent invalid end watch section warnings
[github/Chocobozzz/PeerTube.git] / client / src / app / +my-library / my-video-imports / my-video-imports.component.ts
index 914785bf7448b4fa8ebf297e0e9afdc9f67285ef..7d82f62b93d9510c72f6c417ee1b55e87826ad3d 100644 (file)
@@ -33,10 +33,16 @@ export class MyVideoImportsComponent extends RestTable implements OnInit {
     switch (state) {
       case VideoImportState.FAILED:
         return 'badge-red'
+
       case VideoImportState.REJECTED:
         return 'badge-banned'
+
       case VideoImportState.PENDING:
         return 'badge-yellow'
+
+      case VideoImportState.PROCESSING:
+        return 'badge-blue'
+
       default:
         return 'badge-green'
     }
@@ -54,6 +60,10 @@ export class MyVideoImportsComponent extends RestTable implements OnInit {
     return videoImport.state.id === VideoImportState.FAILED
   }
 
+  isVideoImportCancelled (videoImport: VideoImport) {
+    return videoImport.state.id === VideoImportState.CANCELLED
+  }
+
   getVideoUrl (video: { uuid: string }) {
     return Video.buildWatchUrl(video)
   }
@@ -62,8 +72,26 @@ export class MyVideoImportsComponent extends RestTable implements OnInit {
     return Video.buildUpdateUrl(video)
   }
 
-  protected reloadData () {
-    this.videoImportService.getMyVideoImports(this.pagination, this.sort)
+  deleteImport (videoImport: VideoImport) {
+    this.videoImportService.deleteVideoImport(videoImport)
+      .subscribe({
+        next: () => this.reloadData(),
+
+        error: err => this.notifier.error(err.message)
+      })
+  }
+
+  cancelImport (videoImport: VideoImport) {
+    this.videoImportService.cancelVideoImport(videoImport)
+      .subscribe({
+        next: () => this.reloadData(),
+
+        error: err => this.notifier.error(err.message)
+      })
+  }
+
+  protected reloadDataInternal () {
+    this.videoImportService.getMyVideoImports(this.pagination, this.sort, this.search)
         .subscribe({
           next: resultList => {
             this.videoImports = resultList.data