*/
class AuthHTTPDPlugin extends ForgeAuthPlugin {
function __construct() {
- global $gfconfig;
parent::__construct();
$this->name = "authhttpd";
$this->text = _("HTTPD authentication");
$this->_addHook("check_auth_session");
$this->_addHook("fetch_authenticated_user");
$this->_addHook("close_auth_session");
+ $this->_addHook('session_login_valid');
$this->saved_login = '';
$this->saved_user = NULL;
/**
* Display a form to input credentials
- * @param unknown_type $params
- * @return boolean
+ * @param array $params
+ * @return boolean
*/
function displayAuthForm(&$params) {
global $HTML;
$params['transparent_redirect_urls'][$this->name] = util_make_url('/plugins/'.$this->name.'/post-login.php?return_to='.htmlspecialchars(stripslashes($return_to)));
}
+
+ function session_login_valid($params) {
+ $user = user_get_object_by_name($params['loginname']);
+ $this->setAuthStateResult($params, $user);
+ return true;
+ }
+
/**
- * Is there a valid session?
- * @param unknown_type $params
+ * checkAuthSession - Is there a valid session?
+ * @param array $params
*/
function checkAuthSession(&$params) {
$this->saved_user = NULL;
$user = user_get_object_by_name($username);
}
- // TODO : shouldn't this part be factorized as it seems quite common for many plugins ?
- if ($user) {
- if ($this->isSufficient()) {
- $this->saved_user = $user;
- $params['results'][$this->name] = FORGE_AUTH_AUTHORITATIVE_ACCEPT;
-
- } else {
- $params['results'][$this->name] = FORGE_AUTH_NOT_AUTHORITATIVE;
- }
- } else {
- if ($this->isRequired()) {
- $params['results'][$this->name] = FORGE_AUTH_AUTHORITATIVE_REJECT;
- } else {
- $params['results'][$this->name] = FORGE_AUTH_NOT_AUTHORITATIVE;
- }
- }
+ $this->saved_user = $user;
+ $this->setAuthStateResult($params, $user);
}
/**
- * What FFUser is logged in?
- * @param unknown_type $params
+ * fetchAuthUser - What FFUser is logged in?
+ * @param array $params
*/
function fetchAuthUser(&$params) {
if ($this->saved_user && $this->isSufficient()) {