rendered paste body/** * @access private * @param string $username * @return int */ private function _get_role($username) { if($this->use_ad) { $escaped = $this->ldap_escape($username, false); //show_error(stripslashes($username)); //show_error($escaped); $filter = '(member='.$escaped.')'; $search = ldap_search($this->ldapconn, $this->basedn, $filter, array('cn')); if(! $search ) { log_message('error', "Error searching for group:".ldap_error($this->ldapconn)); show_error('Couldn\'t find groups: '.ldap_error($this->ldapconn)); } $results = ldap_get_entries($this->ldapconn, $search); //show_error(nl2br(var_export($results,true))); $role = FALSE; if($results['count'] != 0) { //show_error(nl2br(var_export($results,true))); for($i = 0; $i < $results['count']; $i++) { $role = array_search($results[$i]['cn'][0], $this->roles); if($role !== FALSE) { return $role; } } } }else { $filter = '('.$this->member_attribute.'='.$username.')'; $search = ldap_search($this->ldapconn, $this->basedn, $filter, array('cn')); if(! $search ) { log_message('error', "Error searching for group:".ldap_error($this->ldapconn)); show_error('Couldn\'t find groups: '.ldap_error($this->ldapconn)); } $results = ldap_get_entries($this->ldapconn, $search); // show_error(nl2br(var_export($results,true))); if($results['count'] != 0) { for($i = 0; $i < $results['count']; $i++) { $role = array_search($results[$i]['cn'][0], $this->roles); if($role !== FALSE) { return $role; } } } } return false; }