function html()
{
- return $this->name ?: $this->login;
+ $name = htmlspecialchars($this->login);
+ if ($this->name and $this->name != $name) {
+ $name = "{$this->name}<small> @$name</small>";
+ }
+ return $name;
}
function email()
if (!$this->admin) {
return FALSE; # empty results
}
- @list ($rootlevel, $sublevel) = explode(' ', $permission);
- if ($sublevel and isset($this->admin[$rootlevel])) {
- return TRUE; # root match
+ preg_match_all('{[ /]}', $permission, $parts, PREG_OFFSET_CAPTURE);
+ foreach ($parts[0] as $part) {
+ if (isset($this->admin[substr($permission, 0, $part[1])])) {
+ return TRUE; # partial match
+ }
}
return isset($this->admin[$permission]); # check level
}