Roles & Permissions

Pubvana uses role-based access control to determine what each user can do in the admin panel.

TL;DR

Five roles: Super Admin (full control), Admin (day-to-day management), Editor (all content), Author (own posts only), Subscriber (read premium content). Roles are assigned per-user at Admin → Users → Edit.

Details

Pubvana's permission system is built on CodeIgniter Shield groups. Each role is a named group with a defined set of permissions. There are 16 permissions across six namespaces.

Permissions Reference

PermissionDescription
admin.accessLog in to and navigate the admin panel
admin.settingsAccess Admin → Settings
admin.themesAccess Admin → Themes
admin.widgetsAccess Admin → Widgets
admin.marketplaceAccess Admin → Marketplace
admin.navigationAccess Admin → Navigation
posts.createCreate new posts
posts.editEdit any post
posts.edit.ownEdit only posts the user authored
posts.deleteDelete posts
posts.publishPublish or schedule posts
posts.read.premiumRead premium/paywalled content
pages.manageCreate, edit, and delete static pages
comments.moderateApprove, reject, and delete comments
media.uploadUpload files to the Media Library
users.manageCreate, edit, and delete user accounts

Role Breakdown

Super Admin

Full unrestricted access. Receives wildcard permissions covering all namespaces.

Permissions: admin.*, posts.*, pages.*, comments.*, media.*, users.*

Admin

Day-to-day site management. Can do almost everything except change core system settings, themes, widgets, marketplace, and navigation (those are reserved for Super Admin).

Permissions: admin.access, posts.create, posts.edit, posts.delete, posts.publish, posts.read.premium, pages.manage, comments.moderate, media.upload, users.manage

Editor

Full content management. Can manage all posts and pages, moderate comments, and upload media. Cannot manage users or access system settings.

Permissions: admin.access, posts.create, posts.edit, posts.delete, posts.publish, posts.read.premium, pages.manage, comments.moderate, media.upload

Author

Can create and manage their own posts. Cannot edit other users' posts.

Permissions: admin.access, posts.create, posts.edit.own, posts.publish, posts.read.premium, media.upload

Key distinction: Authors have posts.edit.own — they can only edit posts where they are the listed author. Editors and above have posts.edit — unrestricted editing of any post.

Subscriber

Front-end only role. Can read premium/paywalled content when logged in. Has no admin panel access.

Permissions: posts.read.premium

Assigning Roles

Roles are assigned per-user. Go to Admin → Users, click Edit on a user, and select the desired role from the Role dropdown. The change takes effect immediately.