From 103c95d54c1a75e41ebddc667cea229f6a506388 Mon Sep 17 00:00:00 2001 From: Peter Rotich <peter@enhancesoft.com> Date: Fri, 3 Jan 2014 15:44:35 +0000 Subject: [PATCH] Change AuthenticatedUser user to interface class. This is necessary to force downstream classes to implement key required functions. --- include/class.auth.php | 12 +++++++----- include/class.staff.php | 16 +++++++++++++++- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/include/class.auth.php b/include/class.auth.php index 08760ed9d..09c1a4c8f 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 efd4f341c..cc64d80ff 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) { -- GitLab