function transferTaskCategory($itemtype, $ID, $newID)
{
global $DB;
switch ($itemtype) {
case 'Ticket':
$table = 'glpi_tickettasks';
$field = 'tickets_id';
$task = new TicketTask();
break;
case 'Problem':
$table = 'glpi_problemtasks';
$field = 'problems_id';
$task = new ProblemTask();
break;
case 'Change':
$table = 'glpi_changetasks';
$field = 'changes_id';
$task = new ProblemTask();
break;
}
$query = "SELECT *\n FROM `{$table}`\n WHERE `{$field}` = '{$ID}'";
if ($result = $DB->query($query)) {
if ($DB->numrows($result) != 0) {
while ($data = $DB->fetch_assoc($result)) {
$input = array();
if ($data['taskcategories_id'] > 0) {
$categ = new TaskCategory();
if ($categ->getFromDB($data['taskcategories_id'])) {
$inputcat['entities_id'] = $this->to;
$inputcat['completename'] = addslashes($categ->fields['completename']);
$catid = $categ->findID($inputcat);
if ($catid < 0) {
$catid = $categ->import($inputcat);
}
$input['id'] = $data['id'];
$input[$field] = $ID;
$input['taskcategories_id'] = $catid;
$task->update($input);
}
}
}
}
}
}