[dokuwiki] Anti spam / Moderators & Owners

Hi,

In the recent anti-spam brainstorming discussion I mentioned a new level of user access similar to "moderator" in forums. A couple of others also thought it was a good idea. This message is to start a discussion on what a moderator should and shouldn't be able to do and any implementation considerations.

I guess the first issue is whether or not moderators belong to a global group like superusers or whether they should be acl based. I like the idea of them being ACL based. That would mean a new ACL bit flag and allow wiki admins to set moderators for the whole wiki or particular portions of the wiki.

I envisage that on any page where a user has moderator access, they will see an admin button. Clicking that will show a menu similar to the current admin menu - but only showing those admin plugins which allow moderator access. By default admin plugins will only allow superuser access.[1]

Admin plugins which allow moderator access would need to be implemented to make sure they didn't provide access to parts of DokuWiki to which the user didn't have moderator access. The ACL plugin[2] is an obvious candidate - as it operates on a page by page basis. Another is the revert manager, which would only show those pages to which the user had moderator access.

One of the other things mentioned in the anti-spam discussion was a simpler page revert mechanism - say by adding a revert button on the old revisions page. If such a button was not to be generally available, moderators could have access to it.

If the ACL system was altered to support moderators, it might also be worthwhile to add in the concept of a page "owner". Owner would be a special user(group) consisting of the user(s) who authored(contributed) to a page and would be able to have their own access level defined. e.g.
namespace: @all     read
namespace: @users   read/create
namespace: @owner   read/edit

or even

namespace: @all     read/edit/create
namespace: @owner   read/edit/moderator

That is my 0.02.  What do others think?

Cheers,

Chris

Implementation notes (to put them on record)
[1] Add a new method getPermissionRequired() to the base admin plugin class. The base class version will return 255. The admin menu generation and action processing will compare the result of getPermissionRequired() with the users access permissions before proceeding further.

[2] Modifications would be required to prevent rules applicable to the current page/namespace being shown when the user doesn't have moderator access to the actual page/namespace specified in the rule.





--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist

Other related posts: