1
0

Convert methods to instance methods instead of static to be consistent with the Identity interface. Clean up a copy/paste error to get the auhtorized list of groups.

This commit is contained in:
Tim Almdal 2009-10-21 16:06:29 -07:00
parent 00cb7dc37a
commit 5b62f010cc

View File

@ -40,12 +40,12 @@ class Identity_Ldap_Driver implements Identity_Driver {
public function activate() {
foreach (self::$_params["groups"] as $group_name) {
$root = item::root();
$group = self::lookup_group_by_name($group_name);
$group = $this->lookup_group_by_name($group_name);
module::event("group_created", $group);
access::allow($group, "view", $root);
access::allow($group, "view_full", $root);
}
$admin = self::lookup_user_by_name(self::$_params["admins"][0]);
$admin = $this->lookup_user_by_name(self::$_params["admins"][0]);
Database::instance()->query("UPDATE {items} SET owner_id = {$admin->id}");
}
@ -55,7 +55,7 @@ class Identity_Ldap_Driver implements Identity_Driver {
public function deactivate() {
// Delete all groups so that we give other modules an opportunity to clean up
foreach (self::$_params["groups"] as $group_name) {
$group = self::lookup_group_by_name($group_name);
$group = $this->lookup_group_by_name($group_name);
module::event("group_deleted", $group);
}
}
@ -131,20 +131,20 @@ class Identity_Ldap_Driver implements Identity_Driver {
* @see Identity_Driver::everybody.
*/
public function everybody() {
return self::lookup_group_by_name(self::$_params["everybody_group"]);
return $this->lookup_group_by_name(self::$_params["everybody_group"]);
}
/**
* @see Identity_Driver::registered_users.
*/
public function registered_users() {
return self::lookup_group_by_name(self::$_params["registered_users_group"]);
return $this->lookup_group_by_name(self::$_params["registered_users_group"]);
}
/**
* @see Identity_Driver::lookup_group.
*/
static function lookup_group($id) {
public function lookup_group($id) {
$result = @ldap_search(self::$_connection, self::$_params["group_domain"], "gidNumber=$id");
$entry_id = ldap_first_entry(self::$_connection, $result);
@ -161,7 +161,7 @@ class Identity_Ldap_Driver implements Identity_Driver {
* @param string $name the name of the group to locate
* @return Group_Definition
*/
static function lookup_group_by_name($name) {
public function lookup_group_by_name($name) {
$result = @ldap_search(self::$_connection, self::$_params["group_domain"], "cn=$name");
$entry_id = ldap_first_entry(self::$_connection, $result);
@ -179,7 +179,7 @@ class Identity_Ldap_Driver implements Identity_Driver {
public function get_user_list($ids) {
$users = array();
foreach ($ids as $id) {
$users[] = self::lookup_user($id);
$users[] = $this->lookup_user($id);
}
return $users;
}
@ -187,11 +187,11 @@ class Identity_Ldap_Driver implements Identity_Driver {
/**
* @see Identity_Driver::groups.
*/
static function groups() {
public function groups() {
$groups = array();
foreach (self::$_params["groups"] as $group_name) {
$root = item::root();
$groups[] = Identity::lookup_group_by_name($group_name);
$groups[] = $this->lookup_group_by_name($group_name);
}
return $groups;
}
@ -200,7 +200,7 @@ class Identity_Ldap_Driver implements Identity_Driver {
$result = ldap_search(self::$_connection, self::$_params["group_domain"],
"(memberUid=$user->name)");
$associated_groups = Kohana::config("ldap.groups");
$associated_groups = self::$_params["groups"];
$groups = array();
for ($entry_id = ldap_first_entry(self::$_connection, $result);
$entry_id != false;