/** * Add a label and a element to a new row. Label is inserted before the element. * * @api * * @param $label * @param AbstractFormElement $element * * @return AbstractFormElement */ public function &addLabeled($label, \FeM\sPof\form\AbstractFormElement &$element) { $row = $this->addRow(); $row->addElement(new element\Label($element->getName(), $label, $element->isRequired())); $row->addElement($element); return $element; }
/** * Add a new field based element (input element) to the list. * * @internal * * @param AbstractFormElement $element * @param int $elementIndex index of the element in the current row */ public final function addField(\FeM\sPof\form\AbstractFormElement &$element, $elementIndex) { $name = $element->getName(); if (!empty($name)) { $this->field[$name] = ['set' => $this->set, 'row' => count($this->fieldset[$this->set]['rows']) - 1, 'element' => $elementIndex]; } }
/** * Render the element. * * @api * * @return string */ public function render() { parent::renderPrepare(); foreach ($this->options as $key => $value) { $this->innerHtml .= (new SelectOption($value, $key, $key == $this->selectedValue))->render(); } return parent::render(); }
/** * Render the element. * * @api * * @return string */ public function render() { parent::renderPrepare(); foreach ($this->options as $key => $value) { $this->innerHtml .= (new OptionInput($this->attributes['name'], $this->attributes['name'] . '_' . $key, $key, $key == $this->selectedValue))->render(); $this->innerHtml .= ' ' . (new Label($this->attributes['name'] . '_' . $key, $value, false))->render() . ' '; } return parent::render(); }