Пример #1
0
 public function render()
 {
     $fields = array();
     $content = parent::render();
     foreach ($this->describeWidgets as $widget) {
         if (!$widget->hasAttribute('do')) {
             continue;
         }
         $name = $widget->getAttribute('name');
         $value = $widget->getAttribute('value');
         $whatToDo = $widget->getAttribute('do');
         if (in_array($whatToDo, array('textInput', 'button'))) {
             $label = $widget->getAttribute('label', $this->translate($name . '_label'));
         } elseif (in_array($whatToDo, array('checkBox', 'radioButton', 'fieldsetSwitch'))) {
             $label = $widget->getAttribute('label', $this->translate($name . '_' . $value . '_label'));
         }
         $id = $this->view->getUniqueId($name);
         $fields[] = array('name' => $name, 'id' => $id, 'helpId' => $widget->getAttribute('helpId', $name), 'label' => $label);
     }
     $view = $this->view->spawnView($this->view->getModule());
     $view->setTemplate('Nethgui\\Template\\Help\\Section');
     $view['title'] = $this->getTitle();
     $view['description'] = $this->getDescription();
     $view['fields'] = $fields;
     $view['titleLevel'] = $this->nestingLevel;
     $headingRenderer = parent::spawnRenderer($view)->render();
     return (string) $headingRenderer . $content;
 }