/** * Constructor Method * */ function __construct($consumer_type = NULL) { $this->ogVersion = ldap_authorization_og_og_version(); $params = ldap_authorization_og_ldap_authorization_consumer(); if ($this->ogVersion == 1) { $this->ogRoles = og_roles(0); $this->ogRolesByName = array_flip($this->ogRoles); } else { $this->_setConsumerIDs(); } parent::__construct('og_group', $params['og_group']); }
/** * Constructor Method * */ function __construct($consumer_type = NULL) { $params = ldap_authorization_drupal_role_ldap_authorization_consumer(); $this->refreshConsumerIDs(); parent::__construct('drupal_role', $params['drupal_role']); }
/** * @param string $op 'grant' or 'revoke' signifying what to do with the $consumer_ids * @param drupal user object $object * @param array $user_auth_data is array specific to this consumer_type. Stored at $user->data['ldap_authorizations'][<consumer_type>] * @param $consumers as associative array in form of LdapAuthorizationConsumerAbstract::populateConsumersFromConsumerIds * @param array $ldap_entry, when available user's ldap entry. * @param boolean $user_save indicates is user data array should be saved or not. this is always overridden for og */ public function authorizationDiff($existing, $desired) { if ($this->ogVersion != 1) { return parent::authorizationDiff($existing, $desired); } /** * for og 1.5, goal is not to recognize X-2 consumer ids if X-N exist * since X-2 consumer ids are granted as a prerequisite of X-N */ $diff = array_diff($existing, $desired); $desired_group_ids = array(); foreach ($desired as $i => $consumer_id) { list($gid, $rid) = $this->og1ConsumerIdParts($consumer_id); $desired_group_ids[$gid] = TRUE; } foreach ($diff as $i => $consumer_id) { list($gid, $rid) = $this->og1ConsumerIdParts($consumer_id); // if there are still roles in this group that are desired, do // not remove default mambership role id if ($rid == $this->defaultMembershipRid && !empty($desired_group_ids[$gid])) { unset($diff[$i]); } } // dpm("diff"); dpm($diff); dpm("existing"); dpm($existing); dpm("desired"); dpm($desired); dpm("final diff"); dpm($diff); return $diff; }
function __construct($consumer_type) { $this->ogVersion = ldap_authorization_og_og_version(); $params = ldap_authorization_og_ldap_authorization_consumer(); parent::__construct('og_group', $params['og_group']); }