function ldapdata_ldap_attributes_needed_alter in LDAP integration 6
Implements hook_ldap_attributes_needed_alter
Parameters
Array $attributes array of attributes to be returned from ldap queries:
String $op The operation being performed such as 'user_update', 'user_insert', ...:
Mixed $server Server sid or server object:
File
- ./ldapdata.module, line 1184 
- ldapdata provides data maping against ldap server.
Code
function ldapdata_ldap_attributes_needed_alter(&$attributes, $op, $server = NULL) {
  if ($server) {
    $sid = is_object($server) ? $server->sid : $server;
    switch ($op) {
      case LDAPAUTH_SYNC_CONTEXT_INSERT_DRUPAL_USER:
      case LDAPAUTH_SYNC_CONTEXT_UPDATE_DRUPAL_USER:
        $attributes[] = 'dn';
        foreach (_ldapdata_ldap_info($sid, 'ldapdata_mappings') as $key => $value) {
          if (!in_array($key, array(
            'access',
            'status',
          ))) {
            $attributes[] = $value;
          }
        }
        $ldapdata_attrs = _ldapdata_ldap_info($sid, 'ldapdata_attrs');
        foreach ($ldapdata_attrs as $attr_name => $attr_info) {
          if (!in_array($attr_name, $attributes)) {
            $attributes[] = $attr_name;
          }
        }
        break;
    }
  }
}