function ldapdata_user_update in LDAP integration 5
Same name and namespace in other branches
- 5.2 ldapdata.module \ldapdata_user_update()
1 call to ldapdata_user_update()
- ldapdata_user in ./ldapdata.module
- Implements hook_user()
File
- ./ldapdata.module, line 572
Code
function ldapdata_user_update(&$edit, &$user, $category) {
global $ldapdata_ldap;
if (!$user->ldap_authentified) {
return;
}
$writeout = array();
$editables = _ldapdata_ldap_info($user, 'ldapdata_rwattrs');
if ($category == LDAP_CATEGORY_USER_DATA && $editables) {
$writeout = array_merge($writeout, ldapdata_user_update_ldap_attributes($edit, $user));
}
else {
if ($category == 'account') {
$writeout = array_merge($writeout, ldapdata_user_update_drupal_account($edit, $user));
}
}
$writeout = array_merge($writeout, ldapdata_user_update_profile($edit, $user));
if ($writeout) {
$bind_info = _ldapdata_edition($user);
if (!$ldapdata_ldap
->connect($bind_info[0], $bind_info[1])) {
watchdog('user', "User update: user {$user->name}'s data could not be updated in the LDAP directory", WATCHDOG_NOTICE);
return;
}
$ldapdata_ldap
->writeAttributes($user->ldap_dn, $writeout);
}
$ldapdata_ldap
->disconnect();
}