X-Git-Url: http://git.shiar.net/minimedit.git/blobdiff_plain/9c6d004933372ae88ff79a7625a3628aa447a5e6..1df0d6467575a4664c03f02ecc471870b4cfb93b:/auth.inc.php diff --git a/auth.inc.php b/auth.inc.php index 4d9b29e..a792ef6 100644 --- a/auth.inc.php +++ b/auth.inc.php @@ -3,9 +3,9 @@ date_default_timezone_set('Europe/Amsterdam'); class User { - function __construct($dir) + function __construct($dir, $existing = TRUE) { - if (!file_exists($dir)) { + if (!file_exists($dir) and $existing) { throw new Exception("Gebruiker niet gevonden in $dir"); } $this->dir = $dir; @@ -37,9 +37,15 @@ class User return rtrim(@file_get_contents("{$this->dir}/email.txt")); } - function admin() + function admin($permission = NULL) { - return @file_exists("{$this->dir}/.admin"); + if (isset($permission)) { + return $this->admin && isset($this->admin[$permission]); # check level + } + if (!@file_exists("{$this->dir}/.admin")) { + return FALSE; # not an admin + } + return array_fill_keys(explode("\n", file_get_contents("{$this->dir}/.admin")), TRUE); } function seen()