# This patch file was generated by NetBeans IDE # Following Index: paths are relative to: /Users/thomas/Sites/sources/typo3_src-trunk # This patch can be applied using context Tools: Patch action on respective folder. # It uses platform neutral UTF-8 encoding and \n newlines. # Above lines and this line are ignored by the patching process. Index: typo3/sysext/cms/layout/class.tx_cms_layout.php --- typo3/sysext/cms/layout/class.tx_cms_layout.php Base (BASE) +++ typo3/sysext/cms/layout/class.tx_cms_layout.php Locally Modified (Based On LOCAL) @@ -518,10 +518,7 @@ // Add new-icon link, header: $newP = $this->newContentElementOnClick($id,$key,$lP); $colTitle = t3lib_BEfunc::getProcessedValue('tt_content','colPos',$key); - /** - * @mficzel - * @todo get complete title from tca inclusive ts config manipulations by user func and tsConfig - */ + $tcaItems = t3lib_div::callUserFunction( 'EXT:cms/class.tx_cms_be_layout.php:tx_cms_be_layout->getColPosListItemsParsed' , $id, $this ); foreach( $tcaItems as $item) { if ( $item[1] == $key) { @@ -586,6 +583,8 @@ // add colgroups $colCount = intval($parser->setup['be_layout.']['colCount']); + $rowCount = intval($parser->setup['be_layout.']['rowCount']); + $grid .= ''; for ($i = 0; $i < $colCount; $i++) { $grid .= ''; @@ -593,14 +592,17 @@ $grid .= ''; // cycle through rows - if(count($parser->setup['be_layout.']['rows.'])) { - foreach ($parser->setup['be_layout.']['rows.'] as $rowConfig) { + for ($row = 1; $row <= $rowCount; $row++) { + $rowConfig = $parser->setup['be_layout.']['rows.'][$row.'.']; + if (!isset($rowConfig)) continue; + $grid .= ''; - // and colummns - if(count($rowConfig['columns.'])) { - foreach ($rowConfig['columns.'] as $columnConfig) { + for ($col = 1; $col <= $colCount; $col++) { + $columnConfig = $rowConfig['columns.'][$col.'.']; + if (!isset($columnConfig)) continue; + // which tt_content colPos should be displayed inside this cell $columnKey = intval($columnConfig['colPos']); @@ -609,14 +611,14 @@ (isset($columnConfig['colspan']) ? ' colspan="'.$columnConfig['colspan'].'"' : ''). (isset($columnConfig['rowspan']) ? ' rowspan="'.$columnConfig['rowspan'].'"' : ''). ' class="t3-gridCell t3-page-column t3-page-column-' . $columnKey . + (isset($columnKey) ? ' t3-gridCell-disabled' : '') . (isset($columnConfig['colspan']) ? ' t3-gridCell-width'.$columnConfig['colspan'] : '') . (isset($columnConfig['rowspan']) ? ' t3-gridCell-height'.$columnConfig['rowspan'] : '').'">'; $grid .= $head[$columnKey] . $content[$columnKey] . ''; + } - } $grid .= ''; } - } \ No newline at end of file $out .= $grid.''; } Index: typo3/sysext/cms/layout/db_layout.php --- typo3/sysext/cms/layout/db_layout.php Base (BASE) +++ typo3/sysext/cms/layout/db_layout.php Locally Modified (Based On LOCAL) @@ -1080,7 +1080,7 @@ } // If only one column found, display the single-column view. - if (count($colList)==1) { + if (count($colList)==1 && !$this->MOD_SETTINGS['function']===4) { $dblist->tt_contentConfig['single'] = 1; // Boolean: If set, the content of column(s) $this->tt_contentConfig['showSingleCol'] is shown in the total width of the page $dblist->tt_contentConfig['showSingleCol'] = current($colList); // The column(s) to show if single mode (under each other) }