static function dropdownFields(CommonDBTM $item, $language = '', $value = '')
{
global $DB;
$options = array();
foreach (Search::getOptions(get_class($item)) as $id => $field) {
//Can only translate name, and fields whose datatype is text or string
if (isset($field['field']) && $field['field'] == 'name' && $field['table'] == getTableForItemType(get_class($item)) || isset($field['datatype']) && in_array($field['datatype'], array('text', 'string'))) {
$options[$field['field']] = $field['name'];
}
}
$used = array();
if (!empty($options)) {
$query = "SELECT `field`\n FROM `" . self::getTable() . "`\n WHERE `itemtype`='" . get_class($item) . "'\n AND `items_id` = '" . $item->getID() . "'\n AND `language` = '{$language}'";
$results = $DB->query($query);
if ($DB->numrows($results) > 0) {
while ($data = $DB->fetch_array($results)) {
$used[$data['field']] = $data['field'];
}
}
}
//$used = array();
return Dropdown::showFromArray('field', $options, array('value' => $value, 'used' => $used));
}