示例#1
0
 /**
  * @see IdentityProvider_Driver::guest.
  */
 public function guest()
 {
     if (empty(self::$_guest_user)) {
         self::$_guest_user = new Ldap_User();
         self::$_guest_user->id = 0;
         self::$_guest_user->name = "Guest";
         self::$_guest_user->full_name = "Guest";
         self::$_guest_user->guest = true;
         self::$_guest_user->admin = false;
         self::$_guest_user->locale = null;
         self::$_guest_user->email = null;
         self::$_guest_user->groups = array($this->everybody());
     }
     return self::$_guest_user;
 }
示例#2
0
 /**
  * @see IdentityProvider_Driver::lookup_user_by_name.
  *
  * Special processing: if the supplied name is admin then look up the first user
  * specified by the "admins" driver params
  */
 public function lookup_user_by_name($name)
 {
     $result = ldap_search(self::$_connection, self::$_params["user_domain"], "uid={$name}", explode(",", LDAP_USER_ATTRIBUTES));
     $entries = ldap_get_entries(self::$_connection, $result);
     if ($entries["count"] > 0) {
         return new Ldap_User($entries[0]);
     }
     if ($name == self::$_params["guest_user"]) {
         if (empty(self::$_guest_user)) {
             self::$_guest_user = new Ldap_User();
             self::$_guest_user->id = LDAP_GUEST_ID;
             self::$_guest_user->name = "{$name}";
             self::$_guest_user->full_name = "{$name}";
             self::$_guest_user->guest = true;
             self::$_guest_user->admin = false;
             self::$_guest_user->locale = null;
             self::$_guest_user->email = null;
         }
         return self::$_guest_user;
     }
     return null;
 }