mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-07-15 03:45:03 +02:00
Add book item more menu item for Share, restrict share to admin or up, add admin socket events for open/close shares
This commit is contained in:
parent
e05ab14ad2
commit
2f2ec2ec1f
11 changed files with 102 additions and 37 deletions
|
@ -1,5 +1,6 @@
|
|||
const Database = require('../Database')
|
||||
const Logger = require('../Logger')
|
||||
const SocketAuthority = require('../SocketAuthority')
|
||||
|
||||
/**
|
||||
* @typedef OpenMediaItemShareObject
|
||||
|
@ -136,6 +137,7 @@ class ShareManager {
|
|||
} else {
|
||||
this.openMediaItemShares.push({ id: mediaItemShare.id, mediaItemShare: mediaItemShare.toJSON() })
|
||||
}
|
||||
SocketAuthority.adminEmitter('share_open', mediaItemShare.toJSONForClient())
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -153,6 +155,12 @@ class ShareManager {
|
|||
this.openMediaItemShares = this.openMediaItemShares.filter((s) => s.id !== mediaItemShareId)
|
||||
this.openSharePlaybackSessions = this.openSharePlaybackSessions.filter((s) => s.mediaItemShareId !== mediaItemShareId)
|
||||
await this.destroyMediaItemShare(mediaItemShareId)
|
||||
|
||||
const mediaItemShareObjectForClient = { ...mediaItemShare.mediaItemShare }
|
||||
delete mediaItemShareObjectForClient.pash
|
||||
delete mediaItemShareObjectForClient.userId
|
||||
delete mediaItemShareObjectForClient.extraData
|
||||
SocketAuthority.adminEmitter('share_closed', mediaItemShareObjectForClient)
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue