Index: t3lib/class.t3lib_befunc.php =================================================================== --- t3lib/class.t3lib_befunc.php (Revision 6915) +++ t3lib/class.t3lib_befunc.php (Arbeitskopie) @@ -2246,7 +2246,31 @@ } break; case 'group': - $l = implode(', ', t3lib_div::trimExplode(',', $value, 1)); + if ($theColConf['internal_type'] === 'db') { + $itemArray = array(); + $tempAllowedTypes = t3lib_div::trimExplode(',', $theColConf['allowed'], TRUE); + if (!strcmp(trim($tempAllowedTypes[0]), '*')) { + $onlySingleTableAllowed = FALSE; + } elseif ($tempAllowedTypes) { + $onlySingleTableAllowed = (count($tempAllowedTypes) == 1); + } + $tempItemArray = t3lib_div::trimExplode(',', $value, 1); + foreach ($tempItemArray as $dbRead) { + $recordParts = explode('|', $dbRead); + list($this_table, $this_uid) = t3lib_BEfunc::splitTable_Uid($recordParts[0]); + // For the case that no table was found and only a single table is defined to be allowed, use that one: + if (!$this_table && $onlySingleTableAllowed) { + $this_table = $theColConf['allowed']; + } + $recordRow = t3lib_BEfunc::getRecordWSOL($this_table, $this_uid); + if (is_array($recordRow)) { + $itemArray[] = t3lib_BEfunc::getRecordTitle($this_table, $recordRow, TRUE); + } + } + $l = implode(', ', $itemArray); + } else { + $l = implode(', ', t3lib_div::trimExplode(',', $value, 1)); + } break; case 'check': if (!is_array($theColConf['items']) || count($theColConf['items'])==1) {