1
0
Fork 0

Fix video action dropdown

This commit is contained in:
Chocobozzz 2019-06-07 11:08:56 +02:00
parent 3ddb1ec555
commit f238aec54f
No known key found for this signature in database
GPG key ID: 583A612D890159BE
2 changed files with 14 additions and 24 deletions

View 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)
}
}

View 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'
}
])
}
]
]
}
}