diff --git a/include/class.auth.php b/include/class.auth.php index 08760ed9d910ec0d1f1f41213a2aca13b9cd94d2..09c1a4c8f6993a2dca9267cc0a2f4220fd4de805 100644 --- a/include/class.auth.php +++ b/include/class.auth.php @@ -2,13 +2,15 @@ require(INCLUDE_DIR.'class.ostsession.php'); require(INCLUDE_DIR.'class.usersession.php'); -class AuthenticatedUser { - // How the user was authenticated - var $backend; + +interface AuthenticatedUser { // Get basic information - function getId() {} - function getUsername() {} + function getId(); + function getUsername(); + function setBackend($bk); + function getBackend(); + function getRole(); } interface AuthDirectorySearch { diff --git a/include/class.staff.php b/include/class.staff.php index efd4f341c03f40cb3fa79756cc038533b7c86c7f..cc64d80ffc3fe9b88087f22344cf17e8d6170397 100644 --- a/include/class.staff.php +++ b/include/class.staff.php @@ -22,7 +22,7 @@ include_once(INCLUDE_DIR.'class.passwd.php'); include_once(INCLUDE_DIR.'class.user.php'); include_once(INCLUDE_DIR.'class.auth.php'); -class Staff extends AuthenticatedUser { +class Staff implements AuthenticatedUser { var $ht; var $id; @@ -95,6 +95,20 @@ class Staff extends AuthenticatedUser { return $this->config->getInfo() + $this->getHastable(); } + // AuthenticatedUser implementation... + // TODO: Move to an abstract class that extends Staff + function setBackend($bk) { + + } + + function getBackend() { + + } + + function getRole() { + return 'staff'; + } + /*compares user password*/ function check_passwd($password, $autoupdate=true) {