AdminRestrictBranch by Adrian Jones

Restrict site editors to a single branch of the tree.

Admin Restrict Branch

Processwire module to restrict site editors to a single branch of the tree.

Functionality

You can restrict the user to only be able to view and/or edit pages from a specific branch of the page tree.

Restrictions work in the admin list view as well as via the API for front-end editing (works with FREDI, FEEL, and manual API calls).

There are three ways to match users to a branch parent:

  • User Specified Branch Parent
  • Role Specified Branch Parent
  • Role Name
  • Custom PHP code

Name matching can be limited to a specific parent to reduce mis-matches and improve matching efficiency.

Determine whether non-matched users will have access to the entire page tree, or no access at all.

Determine whether to limit editing and list viewing, or just editing.

Specify branch exclusions which will allow for editing of PageTable content housed in external parent branches and some other use cases.

Conditionally prevent admin search from returning restricted pages for things like inserting links to pages via the autocomplete option in CKEditor.

Conditionally modify breadcrumbs to remove pages that are outside the restricted branch.

Support forum:

https://processwire.com/talk/topic/11499-admin-restrict-branch/

License


This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

(See included LICENSE file for full license text.)

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • This week ProcessWire (3.0.175) gained the ability to maintain separate read-only and read-write database connections to optimize scalability, cost and performance. The post covers why this can be so valuable and how to configure it in ProcessWire— More
    2 April 2021
  • ProcessWire 3.0.174 core updates: improvements to the new path/URL hooks and more— More
    12 March 2021
  • ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages— More
    5 March 2021

Latest news

  • ProcessWire Weekly #361
    In the 361st issue of ProcessWire Weekly we'll take  closer look at a new third party module called Copy Markdown, and check out the latest weekly update from Ryan. Read on!
    Weekly.pw / 10 April 2021
  • ProcessWire 3.0.175 adds new database scalability options
    This week ProcessWire gained the ability to maintain separate read-only and read-write database connections to optimize scalability, cost and performance. The post covers why this can be so valuable and how to configure it in ProcessWire.
    Blog / 2 April 2021
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer