/** * @param $users_id **/ static function manageDeletedUserInLdap($users_id) { global $CFG_GLPI; //User is present in DB but not in the directory : it's been deleted in LDAP $tmp['id'] = $users_id; $myuser = new User(); switch ($CFG_GLPI['user_deleted_ldap']) { //DO nothing default: case 0: break; //Put user in dustbin //Put user in dustbin case 1: $myuser->delete($tmp); break; //Delete all user dynamic habilitations and groups //Delete all user dynamic habilitations and groups case 2: Profile_User::deleteRights($users_id, true); Group_User::deleteGroups($users_id, true); break; //Deactivate the user //Deactivate the user case 3: $tmp['is_active'] = 0; $myuser->update($tmp); break; } $changes[0] = '0'; $changes[1] = ''; $changes[2] = __('Deleted user in LDAP directory'); Log::history($users_id, 'User', $changes, 0, Log::HISTORY_LOG_SIMPLE_MESSAGE); }
/** * @param $users_id **/ static function manageDeletedUserInLdap($users_id) { global $CFG_GLPI; //The only case where users_id can be null if when a user has been imported into GLPi //it's dn still exists, but doesn't match the connection filter anymore //In this case, do not try to process the user if (!$users_id) { return true; } //User is present in DB but not in the directory : it's been deleted in LDAP $tmp['id'] = $users_id; $tmp['is_deleted_ldap'] = 1; $myuser = new self(); $myuser->getFromDB($users_id); //User is already considered as delete from ldap if ($myuser->fields['is_deleted_ldap'] == 1) { return; } switch ($CFG_GLPI['user_deleted_ldap']) { //DO nothing default: case 0: $myuser->update($tmp); break; //Put user in dustbin //Put user in dustbin case 1: $myuser->delete($tmp); break; //Delete all user dynamic habilitations and groups //Delete all user dynamic habilitations and groups case 2: Profile_User::deleteRights($users_id, true); Group_User::deleteGroups($users_id, true); $myuser->update($tmp); break; //Deactivate the user //Deactivate the user case 3: $tmp['is_active'] = 0; $myuser->update($tmp); break; //Deactivate the user+ Delete all user dynamic habilitations and groups //Deactivate the user+ Delete all user dynamic habilitations and groups case 4: $tmp['is_active'] = 0; $myuser->update($tmp); Profile_User::deleteRights($users_id, true); Group_User::deleteGroups($users_id, true); break; } /* $changes[0] = '0'; $changes[1] = ''; $changes[2] = __('Deleted user in LDAP directory'); Log::history($users_id, 'User', $changes, 0, Log::HISTORY_LOG_SIMPLE_MESSAGE);*/ }