// Last parent is not the good one need to display arbo
if (!isset($last_level_displayed[$level - 1]) || $last_level_displayed[$level - 1] != $data[$item->getForeignKeyField()]) {
$work_level = $level - 1;
$work_parentID = $data[$item->getForeignKeyField()];
$parent_datas = array();
do {
// Get parent
if ($item->getFromDB($work_parentID)) {
// Do not do for first item for next page load
if (!$firstitem) {
$title = $item->fields['completename'];
if (isset($item->fields["comment"])) {
$addcomment = DropdownTranslation::getTranslatedValue($ID, $_POST['itemtype'], 'comment', $_SESSION['glpilanguage'], $item->fields['comment']);
$title = sprintf(__('%1$s - %2$s'), $title, $addcomment);
}
$output2 = DropdownTranslation::getTranslatedValue($item->fields['id'], $_POST['itemtype'], 'name', $_SESSION['glpilanguage'], $item->fields['name']);
// $output2 = $item->getName();
$temp = array('id' => $ID, 'text' => $output2, 'level' => $work_level, 'disabled' => true);
if ($_POST['permit_select_parent']) {
unset($temp['disabled']);
}
array_unshift($parent_datas, $temp);
}
$last_level_displayed[$work_level] = $item->fields['id'];
$work_level--;
$work_parentID = $item->fields[$item->getForeignKeyField()];
} else {
// Error getting item : stop
$work_level = -1;
}
} while ($work_level >= 1 && (!isset($last_level_displayed[$work_level]) || $last_level_displayed[$work_level] != $work_parentID));