/**
  * Wird eine korrekte Tabelle zurückgeliefert wenn noch keine Sortierung gewählt wurde?
  */
 public function testPrepareTableWithSortableAndExistingUrlParams()
 {
     $_GET['sortField'] = 'uid';
     $_GET['sortRev'] = 'desc';
     //weiterer Param, der erhalten bleiben sollte
     $_SERVER['REQUEST_URI'] = $_SERVER['REQUEST_URI'] . '&sortField=title&sortRev=desc&additionalParam=test';
     $aEntries = array(0 => array('uid' => 1, 'col1' => 'col1 Value 1'), 1 => array('uid' => 2, 'col1' => 'col1 Value 2'));
     $aColumns = array('uid' => array('title' => 'Header Uid', 'sortable' => 'TestPrefix.'), 'col1' => array('title' => 'Header Col1'));
     $aRet = tx_rnbase_mod_Tables::prepareTable($aEntries, $aColumns, $this->oFormTool, array());
     //allgmein
     $this->assertEquals(3, count($aRet[0]), 'Das Array der gesamten Tabelle hat die falsche Anzahl an Elementen.');
     //Header
     $this->assertEquals(2, count($aRet[0][0]), 'Das Array des Headers hat die falsche Anzahl an Elementen.');
     $this->assertContains('&additionalParam=test&sortField=uid&sortRev=asc">Header Uid', $aRet[0][0][0], 'Die erste Zelle des Headers ist falsch. 1. teil');
     //der korrekte pfeil?
     $this->assertContains('gfx/redup.gif', $aRet[0][0][0], 'Die erste Zelle des Headers ist falsch. 2. teil');
     $this->assertEquals('Header Col1', $aRet[0][0][1], 'Die zweite Zelle des Headers ist falsch.');
     //erste Zeile
     $this->assertEquals(2, count($aRet[0][1]), 'Das Array der ersten Zeile hat die falsche Anzahl an Elementen.');
     $this->assertEquals(1, $aRet[0][1][0], 'Die erste Zelle der ersten Zeile ist falsch.');
     $this->assertEquals('col1 Value 1', $aRet[0][1][1], 'Die zweite Zelle der ersten Zeile ist falsch.');
     //zweite Zeile
     $this->assertEquals(2, count($aRet[0][2]), 'Das Array der zweiten Zeile hat die falsche Anzahl an Elementen.');
     $this->assertEquals(2, $aRet[0][2][0], 'Die erste Zelle der zweiten Zeile ist falsch.');
     $this->assertEquals('col1 Value 2', $aRet[0][2][1], 'Die zweite Zelle der zweiten Zeile ist falsch.');
 }
 /**
  * Start creation of result list.
  * @param 	string 	$content
  * @param 	array 	$items
  * @return 	string
  */
 protected function showItems(&$content, array $items)
 {
     if (empty($items)) {
         $content = $this->getNoItemsFoundMsg();
         return;
         //stop
     }
     // else
     $columns = $this->getColumns($this->getDecorator($this->getModule()));
     tx_rnbase::load('tx_rnbase_mod_Tables');
     list($tableData, $tableLayout) = tx_rnbase_mod_Tables::prepareTable($items, $columns, $this->getFormTool(), $this->getOptions());
     $out = $this->getModule()->getDoc()->table($tableData, $tableLayout);
     $content .= $out;
     return $out;
 }
 /**
  * Start creation of result list
  *
  * @param string $content
  * @param array $items
  * @param tx_mklib_mod1_decorator_Base $decorator
  * @param tx_mklib_mod1_searcher_Base $callingClass
  * @param bool $bAddMiscColumns
  * @deprecated tx_mklib_mod1_searcher_abstractBase nutzen
  */
 public static function showItems(&$content, $items, tx_mklib_mod1_decorator_Base $decorator, tx_mklib_mod1_searcher_Base $callingClass, $columns, $bAddMiscColumns = true)
 {
     t3lib_div::logDeprecatedFunction();
     $funcId = $callingClass->getFuncId();
     //allgmeine Spalten hinzufügen
     if ($bAddMiscColumns) {
         self::addMiscColumns($columns, $decorator);
     }
     if ($items) {
         tx_rnbase::load('tx_rnbase_mod_Tables');
         $arr = tx_rnbase_mod_Tables::prepareTable($items, $columns, $callingClass->getFormTool(), $callingClass->getOptions());
         $out = $callingClass->getModule()->getDoc()->table($arr[0]);
     } else {
         $out = '<p><strong>###LABEL_NO_' . strtoupper($funcId) . '_FOUND###</strong></p><br/>';
     }
     $content .= $out;
 }
 /**
  * Start creation of result list.
  * @param 	string 	$content
  * @param 	array 	$items
  * @return 	string
  */
 protected function showItems(&$content, array $items)
 {
     if (count($items) === 0) {
         $content = $this->getNoItemsFoundMsg();
         return;
         //stop
     }
     $options = $this->getOptions();
     $decorator = $this->createDefaultDecorator();
     $columns = $this->getColumns($decorator);
     if (array_key_exists('linker', $columns)) {
         $options['linker'] = $columns['linker'];
         unset($columns['linker']);
     }
     tx_rnbase::load('tx_rnbase_mod_Tables');
     list($tableData, $tableLayout) = tx_rnbase_mod_Tables::prepareTable($items, $columns, $this->getFormTool(), $options);
     $out = $this->getModule()->getDoc()->table($tableData, $tableLayout);
     $content .= $out;
     return $out;
 }