X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/806dde3c7931d1a0d13c4f0469013a79e6198dcc..2e5844a8c2b9286ea856a4aa3f5fa24ffaffaa92:/WEB-INF/lib/auth/Auth_ldap.class.php diff --git a/WEB-INF/lib/auth/Auth_ldap.class.php b/WEB-INF/lib/auth/Auth_ldap.class.php index 25d375bc..37101678 100644 --- a/WEB-INF/lib/auth/Auth_ldap.class.php +++ b/WEB-INF/lib/auth/Auth_ldap.class.php @@ -51,7 +51,7 @@ class Auth_ldap extends Auth { var $params; - function Auth_ldap($params) + function __construct($params) { $this->params = $params; if (isset($GLOBALS['smarty'])) { @@ -78,6 +78,13 @@ class Auth_ldap extends Auth { */ function authenticate($login, $password) { + // Special handling for admin@localhost - authenticate against db, not ldap. + // It is a fallback mechanism when admin account in LDAP directory does not exist or is misconfigured. + if ($login == 'admin@localhost') { + import('auth.Auth_db'); + return Auth_db::authenticate($login, $password); + } + if (!function_exists('ldap_bind')) { die ('php_ldap extension not loaded!'); } @@ -255,7 +262,7 @@ class Auth_ldap extends Auth { if (defined('AUTH_DEBUG') && isTrue(AUTH_DEBUG)) { echo '$member_of'; var_dump($member_of); echo '
'; - }; + } // check for group membership foreach ($member_of as $check_grp) {