public function getGroups($itemName)
{
$groups = $this->iaDb->assoc(array('id', 'name', 'order', 'collapsed'), iaDb::EMPTY_CONDITION . ' ORDER BY `order`', self::getTableGroups());
$fields = $this->getByItemName($itemName);
if (empty($fields)) {
return $groups;
}
foreach ($fields as $value) {
if (empty($value['fieldgroup_id']) || empty($groups[$value['fieldgroup_id']])) {
$value['fieldgroup_id'] = '___empty___';
// emulate tab to avoid isset checks
$groups[$value['fieldgroup_id']]['name'] = $value['fieldgroup_id'];
$groups[$value['fieldgroup_id']]['tabview'] = '';
$groups[$value['fieldgroup_id']]['tabcontainer'] = '';
$groups[$value['fieldgroup_id']]['collapsible'] = false;
$groups[$value['fieldgroup_id']]['collapsed'] = false;
}
$groups[$value['fieldgroup_id']]['fields'][] = $value;
}
return $groups;
}