Fix video action dropdown
authorChocobozzz <me@florianbigard.com>
Fri, 7 Jun 2019 09:08:56 +0000 (11:08 +0200)
committerChocobozzz <me@florianbigard.com>
Fri, 7 Jun 2019 09:08:56 +0000 (11:08 +0200)
client/src/app/shared/buttons/action-dropdown.component.ts
client/src/app/shared/video/video-actions-dropdown.component.ts

index f5345831b86dd5827d28a11a14411347945ecdc1..c9dbbfda243035c10b905903ae5ba594e6f0de9e 100644 (file)
@@ -41,10 +41,4 @@ export class ActionDropdownComponent<T> {
   areActionsDisplayed (actions: DropdownAction<T>[], entry: T) {
     return actions.some(a => a.isDisplayed === undefined || a.isDisplayed(entry))
   }
-
-  handleClick (event: Event, action: DropdownAction<T>) {
-    event.preventDefault()
-
-    // action.handler(entry)
-  }
 }
index 0bbc783c12b6fd43dbc00d94a82c8992413ef1b6..8d4e336971f45826f9ec1478bea67436944fab07 100644 (file)
@@ -188,19 +188,16 @@ export class VideoActionsDropdownComponent implements OnChanges {
   }
 
   private buildActions () {
-    this.videoActions = []
-
-    if (this.authService.isLoggedIn()) {
-      this.videoActions.push([
+    this.videoActions = [
+      [
         {
           label: this.i18n('Save to playlist'),
           handler: () => this.playlistDropdown.toggle(),
-          isDisplayed: () => this.displayOptions.playlist,
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.playlist,
           iconName: 'playlist-add'
         }
-      ])
-
-      this.videoActions.push([
+      ],
+      [
         {
           label: this.i18n('Download'),
           handler: () => this.showDownloadModal(),
@@ -211,36 +208,35 @@ export class VideoActionsDropdownComponent implements OnChanges {
           label: this.i18n('Update'),
           linkBuilder: ({ video }) => [ '/videos/update', video.uuid ],
           iconName: 'edit',
-          isDisplayed: () => this.displayOptions.update && this.isVideoUpdatable()
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.update && this.isVideoUpdatable()
         },
         {
           label: this.i18n('Blacklist'),
           handler: () => this.showBlacklistModal(),
           iconName: 'no',
-          isDisplayed: () => this.displayOptions.blacklist && this.isVideoBlacklistable()
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.blacklist && this.isVideoBlacklistable()
         },
         {
           label: this.i18n('Unblacklist'),
           handler: () => this.unblacklistVideo(),
           iconName: 'undo',
-          isDisplayed: () => this.displayOptions.blacklist && this.isVideoUnblacklistable()
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.blacklist && this.isVideoUnblacklistable()
         },
         {
           label: this.i18n('Delete'),
           handler: () => this.removeVideo(),
-          isDisplayed: () => this.displayOptions.delete && this.isVideoRemovable(),
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.delete && this.isVideoRemovable(),
           iconName: 'delete'
         }
-      ])
-
-      this.videoActions.push([
+      ],
+      [
         {
           label: this.i18n('Report'),
           handler: () => this.showReportModal(),
-          isDisplayed: () => this.displayOptions.report,
+          isDisplayed: () => this.authService.isLoggedIn() && this.displayOptions.report,
           iconName: 'alert'
         }
-      ])
-    }
+      ]
+    ]
   }
 }