/**
  *
  * @param tx_rnbase_util_FormTool $formTool
  * @param array $options
  * @return string
  */
 public function makeClearLink(tx_rnbase_model_base $item, tx_rnbase_util_FormTool $formTool, $options = array())
 {
     $out = $formTool->createSubmit('showDetails[' . $this->identifier . '][clear]', isset($options['label']) ? $options['label'] : '###LABEL_BTN_NEWSEARCH###', isset($options['confirm']) ? $options['confirm'] : '', $options);
     return $out;
 }
 /**
  * Liefert die passenden Überschrift für die Tabelle
  *
  * @param array $columns
  * @param array $options
  * @param tx_rnbase_util_FormTool $formTool
  * @return array
  */
 private static function getHeadline($columns = array(), $options, $formTool)
 {
     global $LANG;
     $arr = array();
     if ($options->getCheckbox()) {
         $arr[] = ' ';
         // Spalte für Checkbox
     }
     if ($options->getAddRecordSprite()) {
         $arr[] = ' ';
     }
     foreach ($columns as $column => $data) {
         if ((int) $data['nocolumn']) {
             continue;
         }
         if ((int) $data['notitle']) {
             $arr[] = '';
             continue;
         }
         $label = $LANG->getLL(isset($data['title']) ? $data['title'] : $column);
         if (!$label && isset($data['title'])) {
             $label = $LANG->sL($data['title']);
         }
         //es gibt die Möglichkeit sortable zu setzen. damit wird
         //nach dem title eine sortierung eingeblendet.
         //in $data['sortable'] sollte ein prefix für das feld stehen, sprich
         //der alias der tabelle um damit direkt weiterabeiten zu können.
         //einfach leer lassen wenn auf einen prefix verzichtet werden soll
         if (isset($data['sortable'])) {
             $label = $formTool->createSortLink($column, $label);
         }
         $arr[] = $label ? $label : $data['title'];
     }
     if ($options->getLinker()) {
         $arr[] = $LANG->getLL('label_action');
     }
     return $arr;
 }
 /**
  *
  * @param array $menuObjs
  * @param tx_rnbase_util_FormTool $formTool
  * @return array
  */
 protected function initSubMenu(&$menuObjs, $formTool)
 {
     $items = $this->getSubMenuItems();
     if (!is_array($items)) {
         return;
     }
     $menuItems = array();
     foreach ($items as $idx => $tabItem) {
         $menuItems[$idx] = $tabItem->getSubLabel();
         $menuObjs[$idx] = $tabItem;
         $out = $tabItem->handleRequest($this->getModule());
         if ($out) {
             $this->showMessage($out, $tabItem);
         }
     }
     $menu = $formTool->showTabMenu($this->getModule()->getPid(), 'mn_' . $this->getFuncId(), $this->getModule()->getName(), $menuItems);
     return $menu;
 }
 function setState()
 {
     if ($this->init) {
         return;
     }
     $sizes = $this->getLimits();
     $menu = tx_rnbase_util_FormTool::showMenu($this->pid, $this->getDataName() . '_limit', $this->modName, $sizes);
     $this->setSetting('limit', $menu['value']);
     $this->setSetting('limitMenu', $menu['menu']);
     $count = $this->listSize;
     $results_at_a_time = $this->getSetting('limit');
     $totalPages = ceil($count / $results_at_a_time);
     // Wir zeigen erstmal maximal 200 Einträge in diesem Menu. Bei sehr großen Listen
     // kommt es sonst zu Speicher-Problemen
     $pages = array();
     for ($i = 0; $i < $totalPages; $i++) {
         if ($i > 200) {
             break;
         }
         $pages[$i * $results_at_a_time] = 'Seite ' . $i;
     }
     $menu = tx_rnbase_util_FormTool::showMenu($this->pid, $this->getDataName() . '_offset', $this->modName, $pages);
     $this->setSetting('offset', $menu['value']);
     $this->setSetting('offsetMenu', $menu['menu']);
     $this->init = TRUE;
 }
 /**
  * Link zur Detailseite erzeugen
  *
  * @param Tx_Rnbase_Domain_Model_Base $item
  * @param tx_rnbase_util_FormTool $formTool
  * @param int $currentPid
  * @param Tx_Rnbase_Domain_Model_DataInterface $options
  * @return string
  */
 public function makeLink($item, $formTool, $currentPid, $options)
 {
     $uidkey = $options->getShowDetailsKey() ? $options->getShowDetailsKey() : 'showDetails[' . $item->getTableName() . ']';
     $label = $options->hasShowDetailsLabel() ? $options->getShowDetailsLabel() : '###LABEL_SHOW_DETAILS###';
     return $formTool->createSubmit($uidkey . '[' . $item->uid . ']', $label);
 }