Index: typo3/class.db_list_extra.inc =================================================================== --- typo3/class.db_list_extra.inc (Revision 6661) +++ typo3/class.db_list_extra.inc (Arbeitskopie) @@ -633,115 +633,118 @@ function renderListRow($table,$row,$cc,$titleCol,$thumbsCol,$indent=0) { $iOut = ''; - if (strlen($this->searchString)) { // If in search mode, make sure the preview will show the correct page - $id_orig = $this->id; - $this->id = $row['pid']; - } + if (!$this->csvOutput) { + // Take this branch when no CSV output + if (strlen($this->searchString)) { // If in search mode, make sure the preview will show the correct page + $id_orig = $this->id; + $this->id = $row['pid']; + } - if (is_array($row)) { + if (is_array($row)) { - $this->setReferences($table, $row['uid']); - // add special classes for first and last row - $rowSpecial = ''; - if ($cc == 1 && $indent == 0) { - $rowSpecial .= ' firstcol'; - } - if ($cc == $this->totalRowCount || $cc == $this->iLimit) { - $rowSpecial .= ' lastcol'; - } + $this->setReferences($table, $row['uid']); + // add special classes for first and last row + $rowSpecial = ''; + if ($cc == 1 && $indent == 0) { + $rowSpecial .= ' firstcol'; + } + if ($cc == $this->totalRowCount || $cc == $this->iLimit) { + $rowSpecial .= ' lastcol'; + } - // Background color, if any: - if ($this->alternateBgColors) { - $row_bgColor = ($cc%2) ? ' class="db_list_normal'.$rowSpecial.'"' : ' class="db_list_alt'.$rowSpecial.'"'; - } else { - $row_bgColor = ' class="db_list_normal'.$rowSpecial.'"'; - } - // Overriding with versions background color if any: - $row_bgColor = $row['_CSSCLASS'] ? ' class="'.$row['_CSSCLASS'].'"' : $row_bgColor; + // Background color, if any: + if ($this->alternateBgColors) { + $row_bgColor = ($cc%2) ? ' class="db_list_normal'.$rowSpecial.'"' : ' class="db_list_alt'.$rowSpecial.'"'; + } else { + $row_bgColor = ' class="db_list_normal'.$rowSpecial.'"'; + } + // Overriding with versions background color if any: + $row_bgColor = $row['_CSSCLASS'] ? ' class="'.$row['_CSSCLASS'].'"' : $row_bgColor; - // Incr. counter. - $this->counter++; + // Incr. counter. + $this->counter++; - // The icon with link - $alttext = t3lib_BEfunc::getRecordIconAltText($row,$table); - $iconImg = t3lib_iconWorks::getIconImage($table,$row,$this->backPath,'title="'.htmlspecialchars($alttext).'"'.($indent ? ' style="margin-left: '.$indent.'px;"' : '')); - $theIcon = $this->clickMenuEnabled ? $GLOBALS['SOBE']->doc->wrapClickMenuOnIcon($iconImg,$table,$row['uid']) : $iconImg; + // The icon with link + $alttext = t3lib_BEfunc::getRecordIconAltText($row,$table); + $iconImg = t3lib_iconWorks::getIconImage($table,$row,$this->backPath,'title="'.htmlspecialchars($alttext).'"'.($indent ? ' style="margin-left: '.$indent.'px;"' : '')); + $theIcon = $this->clickMenuEnabled ? $GLOBALS['SOBE']->doc->wrapClickMenuOnIcon($iconImg,$table,$row['uid']) : $iconImg; - // Preparing and getting the data-array - $theData = Array(); - foreach($this->fieldArray as $fCol) { - if ($fCol==$titleCol) { - $recTitle = t3lib_BEfunc::getRecordTitle($table,$row,FALSE,TRUE); - // If the record is edit-locked by another user, we will show a little warning sign: - if (($lockInfo = t3lib_BEfunc::isRecordLocked($table, $row['uid']))) { - $warning = '' . - 'backPath, 'gfx/recordlock_warning3.gif', 'width="17" height="12"') . ' title="' . htmlspecialchars($lockInfo['msg']) . '" alt="" />' . - ''; - } - $theData[$fCol] = $warning . $this->linkWrapItems($table, $row['uid'], $recTitle, $row); + // Preparing and getting the data-array + $theData = Array(); + foreach($this->fieldArray as $fCol) { + if ($fCol==$titleCol) { + $recTitle = t3lib_BEfunc::getRecordTitle($table,$row,FALSE,TRUE); + // If the record is edit-locked by another user, we will show a little warning sign: + if (($lockInfo = t3lib_BEfunc::isRecordLocked($table, $row['uid']))) { + $warning = '' . + 'backPath, 'gfx/recordlock_warning3.gif', 'width="17" height="12"') . ' title="' . htmlspecialchars($lockInfo['msg']) . '" alt="" />' . + ''; + } + $theData[$fCol] = $warning . $this->linkWrapItems($table, $row['uid'], $recTitle, $row); - $localizationMarkerClass = ''; - if (isset($GLOBALS['TCA'][$table]['ctrl']['languageField']) - && $row[$GLOBALS['TCA'][$table]['ctrl']['languageField']] != 0) { - // it's a translated record - $localizationMarkerClass = ' localization'; + $localizationMarkerClass = ''; + if (isset($GLOBALS['TCA'][$table]['ctrl']['languageField']) + && $row[$GLOBALS['TCA'][$table]['ctrl']['languageField']] != 0) { + // it's a translated record + $localizationMarkerClass = ' localization'; + } + } elseif ($fCol == 'pid') { + $theData[$fCol]=$row[$fCol]; + } elseif ($fCol == '_PATH_') { + $theData[$fCol]=$this->recPath($row['pid']); + } elseif ($fCol == '_REF_') { + $theData[$fCol]=$this->makeRef($table,$row['uid']); + } elseif ($fCol == '_CONTROL_') { + $theData[$fCol]=$this->makeControl($table,$row); + } elseif ($fCol == '_AFTERCONTROL_' || $fCol == '_AFTERREF_') { + $theData[$fCol] = ' '; + } elseif ($fCol == '_CLIPBOARD_') { + $theData[$fCol]=$this->makeClip($table,$row); + } elseif ($fCol == '_LOCALIZATION_') { + list($lC1, $lC2) = $this->makeLocalizationPanel($table,$row); + $theData[$fCol] = $lC1; + $theData[$fCol.'b'] = $lC2; + } elseif ($fCol == '_LOCALIZATION_b') { + // Do nothing, has been done above. + } else { + $tmpProc = t3lib_BEfunc::getProcessedValueExtra($table, $fCol, $row[$fCol], 100, $row['uid']); + $theData[$fCol] = $this->linkUrlMail(htmlspecialchars($tmpProc), $row[$fCol]); + $row[$fCol] = $tmpProc; } - } elseif ($fCol == 'pid') { - $theData[$fCol]=$row[$fCol]; - } elseif ($fCol == '_PATH_') { - $theData[$fCol]=$this->recPath($row['pid']); - } elseif ($fCol == '_REF_') { - $theData[$fCol]=$this->makeRef($table,$row['uid']); - } elseif ($fCol == '_CONTROL_') { - $theData[$fCol]=$this->makeControl($table,$row); - } elseif ($fCol == '_AFTERCONTROL_' || $fCol == '_AFTERREF_') { - $theData[$fCol] = ' '; - } elseif ($fCol == '_CLIPBOARD_') { - $theData[$fCol]=$this->makeClip($table,$row); - } elseif ($fCol == '_LOCALIZATION_') { - list($lC1, $lC2) = $this->makeLocalizationPanel($table,$row); - $theData[$fCol] = $lC1; - $theData[$fCol.'b'] = $lC2; - } elseif ($fCol == '_LOCALIZATION_b') { - // Do nothing, has been done above. - } else { - $tmpProc = t3lib_BEfunc::getProcessedValueExtra($table, $fCol, $row[$fCol], 100, $row['uid']); - $theData[$fCol] = $this->linkUrlMail(htmlspecialchars($tmpProc), $row[$fCol]); - $row[$fCol] = $tmpProc; } - } - if (strlen($this->searchString)) { // Reset the ID if it was overwritten - $this->id = $id_orig; - } + if (strlen($this->searchString)) { // Reset the ID if it was overwritten + $this->id = $id_orig; + } - // Add row to CSV list: - if ($this->csvOutput) { - $this->addToCSV($row,$table); - } + // Add classes to table cells + $this->addElement_tdCssClass[$titleCol] = 'col-title' . $localizationMarkerClass; + if (!$this->dontShowClipControlPanels) { + $this->addElement_tdCssClass['_CONTROL_'] = 'col-control'; + $this->addElement_tdCssClass['_AFTERCONTROL_'] = 'col-control-space'; + $this->addElement_tdCssClass['_CLIPBOARD_'] = 'col-clipboard'; + } + $this->addElement_tdCssClass['_PATH_'] = 'col-path'; + $this->addElement_tdCssClass['_LOCALIZATION_'] = 'col-localizationa'; + $this->addElement_tdCssClass['_LOCALIZATION_b'] = 'col-localizationb'; - // Add classes to table cells - $this->addElement_tdCssClass[$titleCol] = 'col-title' . $localizationMarkerClass; - if (!$this->dontShowClipControlPanels) { - $this->addElement_tdCssClass['_CONTROL_'] = 'col-control'; - $this->addElement_tdCssClass['_AFTERCONTROL_'] = 'col-control-space'; - $this->addElement_tdCssClass['_CLIPBOARD_'] = 'col-clipboard'; - } - $this->addElement_tdCssClass['_PATH_'] = 'col-path'; - $this->addElement_tdCssClass['_LOCALIZATION_'] = 'col-localizationa'; - $this->addElement_tdCssClass['_LOCALIZATION_b'] = 'col-localizationb'; + // Create element in table cells: + $iOut.=$this->addelement(1,$theIcon,$theData,$row_bgColor); - // Create element in table cells: - $iOut.=$this->addelement(1,$theIcon,$theData,$row_bgColor); + // Render thumbsnails if a thumbnail column exists and there is content in it: + if ($this->thumbs && trim($row[$thumbsCol])) { + $iOut.=$this->addelement(4,'', Array($titleCol=>$this->thumbCode($row,$table,$thumbsCol)),$row_bgColor); + } - // Render thumbsnails if a thumbnail column exists and there is content in it: - if ($this->thumbs && trim($row[$thumbsCol])) { - $iOut.=$this->addelement(4,'', Array($titleCol=>$this->thumbCode($row,$table,$thumbsCol)),$row_bgColor); - } - - // Finally, return table row element: - return $iOut; + // Finally, return table row element: + return $iOut; + } + + } else { + // Add row to CSV list: + $this->addToCSV($row,$table); + return; } }