/**
  * Create the snippets content
  *
  * This is a stub function either override getHtmlOutput() or override render()
  *
  * @param \Zend_View_Abstract $view Just in case it is needed here
  * @return \MUtil_Html_HtmlInterface Something that can be rendered
  */
 public function getHtmlOutput(\Zend_View_Abstract $view)
 {
     $tUtil = $this->util->getTokenData();
     $repeater = new \MUtil_Lazy_RepeatableByKeyValue($tUtil->getEveryStatus());
     $table = new \MUtil_Html_TableElement();
     $table->class = 'compliance timeTable rightFloat table table-condensed';
     $table->setRepeater($repeater);
     $table->throw($this->_('Legend'));
     $table->td($repeater->key)->class = array('round', \MUtil_Lazy::method($tUtil, 'getStatusClass', $repeater->key));
     $table->td($repeater->value);
     return $table;
 }
Exemplo n.º 2
0
 /**
  * Render the element
  *
  * @param  string $content Content to decorate
  * @return string
  */
 public function render($content)
 {
     $element = $this->getElement();
     if (null === $element || null === ($view = $element->getView())) {
         return $content;
     }
     $cellDecorators = $this->getCellDecorators();
     $table = new \MUtil_Html_TableElement();
     $table->setOnEmpty(array(new \MUtil_Html_Raw('…'), 'style' => 'text-align: center;'));
     if ($element instanceof \MUtil_Form_Element_Table) {
         $subforms = $element->getSubForms();
         $table->id = $element->getName();
         $table->class = $element->getAttrib('class');
         if ($subforms) {
             $firstform = reset($subforms);
         } else {
             $firstform = $element->getSubForm();
         }
     } elseif ($element instanceof \Zend_Form) {
         $cellDecorators = null;
         $firstform = $element;
         $subforms = array($element);
     }
     if (isset($firstform)) {
         //            $hasDescriptions = false;
         foreach ($firstform->getElements() as $headerelement) {
             if (!$headerelement instanceof \Zend_Form_Element_Hidden) {
                 if (!$subforms) {
                     $headerelement->setAttrib('id', $element->getName());
                 }
                 $last_cell = $table->th(array('title' => $headerelement->getDescription()))->label($headerelement);
                 //                    if ($headerelement->getDescription()) {
                 //                        $hasDescriptions = true;
                 //                    }
             }
         }
         //            if ($hasDescriptions) {
         //                foreach ($firstform->getElements() as $headerelement) {
         //                    if (! $headerelement instanceof \Zend_Form_Element_Hidden) {
         //                        if ($headerelement->getDescription()) {
         //                            $table->tf()->inputOnly($headerelement, 'Description');
         //                        } else {
         //                            $table->tf();
         //                        }
         //                    }
         //                }
         //            }
         $hidden = array();
         if ($subforms) {
             foreach ($subforms as $subform) {
                 $table->tr();
                 foreach ($subform->getElements() as $subelement) {
                     if ($subelement instanceof \Zend_Form_Element_Hidden) {
                         $this->_applyDecorators($subelement, array(array('ViewHelper')));
                         $hidden[] = $subelement;
                     } else {
                         $last_cell = $table->td($hidden, array('title' => $subelement->getDescription()));
                         if ($cellDecorators) {
                             $last_cell->inputOnlyArray($subelement, $cellDecorators);
                         } else {
                             $last_cell[] = $subelement;
                         }
                         $hidden = array();
                     }
                 }
             }
             if ($hidden) {
                 $last_cell[] = $hidden;
             }
         }
     } elseif ($element instanceof \Zend_Form_DisplayGroup) {
         throw new \Exception('Rendering of \\Zend_Form_DisplayGroup in ' . __CLASS__ . ' not yet implemented.');
     } elseif ($element instanceof \Zend_Form_Element) {
         throw new \Exception('Rendering of \\Zend_Form_Element in ' . __CLASS__ . ' not yet implemented.');
         // $table->addColumn($element->renderViewHelper(), $element->renderLabel());
     } else {
         $table->td($element);
     }
     return $table->render($view);
 }