The permission system offers an extensible but simple way of enforcing and giving permissions to users throughout various pages of the wiki. It was designed to allow the most fine tuned control when necessary but still allow for simple permission management to be exactly that -- simple.
The following table describes the user actions currently defined by the permission system. This covers the high level actions that a user could perform.
System flags
| Action | Description | Numeric value |
| Login | Can log in | 1 |
| ControlPanel | Able to access the control panel | 2048 |
| Admin | Able to perform all actions and maintenance operations | 9223372036854775808 |
| Subscribe | Can subscribe to rss and see page changes | 8 |
Page flags
| Action | Description | Numeric value |
| Browse | Can see page title in navigation | 2 |
| Read | Can see page and attachment contents | 4 |
| Update | Can edit an existing page and work with attachments | 16 |
| Create | Can create a new page | 32 |
| Delete | Can delete a page | 256 |
| ChangePermissions | Can access permissions dialog and change permissions | 1024 |
When a user performs a certain operation, the permission system enforces that the user has the authority by confirming that the user is granted associated action(s).
To make the granting of permissions faster and simpler, users and groups can be created with one of the following 'roles' which are simply a set of predefined action grants.
| Actions for Roles | Login | Browse | View | Subscribe | Update | Create | Delete | RevertRestore | ChangePermissions | ControlPanel | Admin |
| Viewers | X | X | X | X | | | | | | | |
| Editors | X | X | X | X | X | X | X | X | X | | |
| Administrators | X | X | X | X | X | X | X | X | X | X | X |
ControlPanel is currently not being used.
Editors/Contributors = 1+2+4+8+16+32+256+1024 = 1343
These can be edited in the MySQL database
Max