ewiki

ring levels

The so called "rings" are an optional simplification inside of the _auth
functions. Usually pages in ewiki are accesses pages using its name and an
action parameter, but it would to too much overhead to base permission
granting on both. So plugins like "auth_perm_ring.php" map $action/$id's
down to following "ring levels" to compare it against the current users
privilige level:

  0  -  is for "ADMINISTRATORS", allows actions like admin/ or control/
  1  -  means "MODERATOR" functions, like delete/
  2  -  for ordinary users or "EDITORS", which includes edit/ and upload/
  3  -  "GUESTS" can only view/ pages or view links/ and info/

While the "ring levels" are the built-in way to decide if the current
request is to be allowed or not, it is NOT the only possible. One could
still write a plugin, that completely skips the "$ewiki_ring" and bases
access granting on something completely different. However the ring levels
are also the default in the userdb plugins, and it is believed to be
satisfactory to have just four privilige groups/ levels, because otherwise
the user database needed to contain a bit mask or list of $actions which
were allowed for each individual user - what surely would be overkill. So
even if you tie an ewiki_auth plugin together with your already existing
user database, you may want to reduce it down to just these four permission
steps.

The $ewiki_ring variable makes it therefore also possible to connect your
existing userdb with ewiki without writing a customized ["auth_query"] or
["auth_userdb"] plugin, because if you just enable the _PROTECTED_MODE
and load 'auth_perm_ring.php', then $ewiki_ring decides about access
granting. So all you needed to do from within 'yoursite.php' was to set
$ewiki_ring to 2, and sporadically to 1 for a few "moderator users".
prev << "ring levels"
next >> "ewiki_auth plugin hooks"


You cannot modify the ProtectedMode file, but anyhow any ideas or suggestion should as usually get filed on BugReports, UserSuggestions or even better the ProtectedMode.Discussion.