Here’s a Role Scoper Update with something for everyone. At least 17 bug fixes and 10 features, most of which pertain to either WordPress 2.6 or editing by Subscribers or Contributors via scoped roles. Also some improvements to front end Category/Page list filtering and even a patch for a WordPress bug involving page permalinks. Soon I’ll trac that and thank by name all of you who helped direct me to these changes. But first I must sleep and then get back to my higher-paying job. Now on to the change log for Role Scoper 0.9.20:
Documentation:
- doc: revised Usage Guide to include How To section, converted to html document
Front End:
- feature: Option to suppress private pages from front end listing even if user can read them
- fixed: In hierarchical page listings, Child Pages were not nested correctly with a hidden ancestor
- fixed: In hierarchical category listings, Subcategories were not nested correctly with a hidden ancestor
WP Bug Patch:
- feature: For %page_name% permalink structure, WP was generating invalid page link with unpublished ancestors. Convert these to page_id permalink
WordPress 2.6 Compatability:
- fixed: WP 2.6 Page Revisions were completely hidden, even for administrator. Restored, but do not yet honor scoped roles or exclusions. Review & Rollback capability follows blog-wide post edit role assignments, including Role Scoper Blog Roles.
- fixed: Hidden Content Teaser didn’t work with WP 2.6
- fixed: In WP 2.6, “header already sent” error message after saving a page
Dashboard Filtering:
- feature: Dashboard now includes private posts/pages in totals
- feature: Dashboard summary sentance now includes totals and link for draft/future/pending pages
- fixed: Dashboard filtering (total posts, Write Post/Page links, etc) was accidentally disabled in the last several versions
- fixed: Existing Dashboard filtering of comment totals became partially dysfunctional in WP 2.6 due to some revised queries
Admin General:
- fixed: Associate role assignment was hidden from non-admin users in Page Edit form
- fixed: When an ancestor term or object was deleted, its propagated roles were also deleted. Now propagated roles are retained and converted to direct-assigned
- change: In Realms settings, default to NOT adjustable realm, hide underlying object type, access type activation UI until Adjustable Realm is activated. (This eliminates some option queries).
Admin Navigation & Access for Elevated users (Subscribers/Contributors with Category/Post/Page-specific Editing Role(s) ):
- feature: Admin notice message if user lacking blog-wide edit_others_pages capability tries to associate a page with Main Page (or disassociate a current child of Main)
- feature: For posts/pages which have ever been published, hide admin divs (Password, Page Parent, etc. as defined in Role Scoper Options) if user doesn’t have any blog-wide editing capabilities (i.e. if they are Subscribers)
- feature: Hide Editing/Association role assignment in post/page edit form if user doesn’t have any blog-wide editing capabilities (i.e. if they are Subscribers)
- fixed: PHP warning at the bottom of Page Edit form on first entry by a Subscriber with Page Edit role
- fixed: Filtering of comments so uneditable comments are not listed at all
- fixed: In WP Admin, Manage Pages linked “Write” to page-new.php even if user can’t edit_pages blog-wide
- fixed: If a user who can’t edit pages accesses page-new.php directly, they got an edit form and could save posts
- fixed: Subscribers with a page/post editing role assignment were not included in the “post author” dropdown
- fixed: Pages/Posts listed though not editable if owned by current user but published and set to exclusive Editors with owner not assigned as an Editor. Corrected to no edit listing or edit form access for “owner” in this situation.
- change: By default, DON’T exclude subscribers from Page/Post Contributor/Editor role assignments (can enforce limitation via Role Scoper Options)
- change: Category selection is NOT hidden from Contributors by default (appears as c-ategorydiv in Role Scoper “Css admin divs” option; change to categorydiv to hide from Contributors)
Usage with ‘WP’ Role Type:
- feature: Category and Post/Page role assignment indicator columns in Manage Posts, Manage Pages when using WP Role Type (but Exclusive indicator col and is_exclusive_rs() template function still only supported with RS role type)
- feature: When using “WP” role type, “Anonymous Reader” role may be set to set as an object role assignment or as an Exclusive Object role (ignoring the default role “assignment” which anonymous users have)
- fixed: When using “WP” role type, Exclusive Section settings for “Anonymous Reader” were not being stored
- fixed: Pages all hidden when using “WP” role type
Performance:
- fixed: LOTS of redundant queries in edit-comments.php for non-admin user
- fixed: Redundant option queries
Security:
- feature: On initialization failure due to already-plugged set_current_user function, default all scoper-defined data sources to zero content visibility (previously just did it for posts, pages)