Fix user permissions restricted by tag #421

This commit is contained in:
advplyr 2022-04-21 19:29:15 -05:00
parent 6f7d2ef4cd
commit 2276228531
4 changed files with 15 additions and 7 deletions

View file

@ -253,7 +253,13 @@ class LibraryController {
minified: req.query.minified === '1'
}
var collections = this.db.collections.filter(c => c.libraryId === req.library.id).map(c => c.toJSONExpanded(libraryItems, payload.minified))
var collections = this.db.collections.filter(c => c.libraryId === req.library.id).map(c => {
var expanded = c.toJSONExpanded(libraryItems, payload.minified)
// If all books restricted to user in this collection then hide this collection
if (!expanded.books.length && c.books.length) return null
return expanded
}).filter(c => !!c)
payload.total = collections.length
if (payload.limit) {

View file

@ -308,7 +308,8 @@ class User {
}
checkCanAccessLibraryItemWithTags(tags) {
if (this.permissions.accessAllTags || !tags || !tags.length) return true
if (!tags || !tags.length) return false
if (this.permissions.accessAllTags) return true
return this.itemTagsAccessible.some(tag => tags.includes(tag))
}