function cleanDBonPurge()
{
global $CFG_GLPI;
if (!isset($this->input['_no_auto_action'])) {
//Get the computer name
$computer = new Computer();
$computer->getFromDB($this->fields['computers_id']);
//Get device fields
if ($device = getItemForItemtype($this->fields['itemtype'])) {
if ($device->getFromDB($this->fields['items_id'])) {
if (!$device->getField('is_global')) {
$updates = array();
if ($CFG_GLPI["is_location_autoclean"] && $device->isField('locations_id')) {
$updates['locations_id'] = 0;
}
if ($CFG_GLPI["is_user_autoclean"] && $device->isField('users_id')) {
$updates['users_id'] = 0;
}
if ($CFG_GLPI["is_group_autoclean"] && $device->isField('groups_id')) {
$updates['groups_id'] = 0;
}
if ($CFG_GLPI["is_contact_autoclean"] && $device->isField('contact')) {
$updates['contact'] = "";
}
if ($CFG_GLPI["is_contact_autoclean"] && $device->isField('contact_num')) {
$updates['contact_num'] = "";
}
if ($CFG_GLPI["state_autoclean_mode"] < 0 && $device->isField('states_id')) {
$updates['states_id'] = 0;
}
if ($CFG_GLPI["state_autoclean_mode"] > 0 && $device->isField('states_id') && $device->getField('states_id') != $CFG_GLPI["state_autoclean_mode"]) {
$updates['states_id'] = $CFG_GLPI["state_autoclean_mode"];
}
if (count($updates)) {
$updates['id'] = $this->fields['items_id'];
$device->update($updates);
}
}
}
}
}
}