[PR #4329] [CLOSED] added toggleable feature to force books to exist in a single shelf #6345

Closed
opened 2026-02-05 10:29:52 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/BookStackApp/BookStack/pull/4329
Author: @scwheele
Created: 6/20/2023
Status: Closed

Base: developmentHead: feature-force-book-on-shelf


📝 Commits (1)

  • 9cc0162 added toggleable feature to force books to exist in a single shelf

📊 Changes

9 files changed (+42 additions, -4 deletions)

View changed files

📝 app/Entities/Controllers/BookController.php (+15 -0)
📝 app/Permissions/PermissionsController.php (+5 -0)
📝 lang/en/errors.php (+1 -0)
📝 lang/en/settings.php (+3 -0)
📝 package-lock.json (+1 -1)
📝 resources/views/books/index.blade.php (+1 -1)
📝 resources/views/books/show.blade.php (+1 -1)
📝 resources/views/settings/features.blade.php (+14 -0)
📝 resources/views/shelves/show.blade.php (+1 -1)

📄 Description

My goal was to implement this in a way that was not disruptive to the m:m relationship between books and shelves. This change caters to larger organizations that want to be more restrictive in how users (or teams) can interact with books and shelves within their own domain.

  • Books will only exist on a single shelf
  • Newly created books will automatically inherit the permissions of the shelf they were created on

If the feature is enabled:

  • Create Book link is hidden from the books/index view (I wanted this to allow the user to select a shelf, but thought that might create more disruption than value)
  • Permissions link is hidden from the books/show view
  • Books can only be created from the "Shelf" view
  • Users still require 'book-create-all' to be able to create books

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/BookStackApp/BookStack/pull/4329 **Author:** [@scwheele](https://github.com/scwheele) **Created:** 6/20/2023 **Status:** ❌ Closed **Base:** `development` ← **Head:** `feature-force-book-on-shelf` --- ### 📝 Commits (1) - [`9cc0162`](https://github.com/BookStackApp/BookStack/commit/9cc016203b046ec251cc379ee00d2c588b4cc2d2) added toggleable feature to force books to exist in a single shelf ### 📊 Changes **9 files changed** (+42 additions, -4 deletions) <details> <summary>View changed files</summary> 📝 `app/Entities/Controllers/BookController.php` (+15 -0) 📝 `app/Permissions/PermissionsController.php` (+5 -0) 📝 `lang/en/errors.php` (+1 -0) 📝 `lang/en/settings.php` (+3 -0) 📝 `package-lock.json` (+1 -1) 📝 `resources/views/books/index.blade.php` (+1 -1) 📝 `resources/views/books/show.blade.php` (+1 -1) 📝 `resources/views/settings/features.blade.php` (+14 -0) 📝 `resources/views/shelves/show.blade.php` (+1 -1) </details> ### 📄 Description My goal was to implement this in a way that was not disruptive to the m:m relationship between books and shelves. This change caters to larger organizations that want to be more restrictive in how users (or teams) can interact with books and shelves within their own domain. - Books will only exist on a single shelf - Newly created books will automatically inherit the permissions of the shelf they were created on If the feature is enabled: - Create Book link is hidden from the books/index view (I wanted this to allow the user to select a shelf, but thought that might create more disruption than value) - Permissions link is hidden from the books/show view - Books can only be created from the "Shelf" view - Users still require 'book-create-all' to be able to create books --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 10:29:52 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#6345