/** * Renders a generic element * * @param HTML_QuickForm2_Node $element Element being rendered */ public function renderElement(HTML_QuickForm2_Node $element) { if ($element->isRequired()) { $this->required = true; } if ($this->options['group_errors'] && ($error = $element->getError())) { $this->errors[$element->getId()] = $error; } }
public static function _renderLabel(HTML_QuickForm2_Renderer $renderer, HTML_QuickForm2_Node $node) { $html = array(); $label = $node->getLabel(); if (!is_array($label)) { $label = array($label); } if ($node->isRequired()) { $renderer->hasRequired = true; } if (!empty($label[0])) { if ($node instanceof HTML_QuickForm2_Container) { $html[] = '<label">'; } else { $html[] = '<label for="' . $node->getId() . '">'; } if ($node->isRequired()) { $html[] = '<span class="required">* </span>'; } $html[] = array_shift($label); $html[] = '</label>'; } return implode('', $html); }
/** * Processes the element's template, adding label(s), required note and error message * * @param string Element template * @param HTML_QuickForm2_Node Element being rendered * @return string Template with some substitutions done */ public function prepareTemplate($elTpl, HTML_QuickForm2_Node $element) { // if element is required $elTpl = $this->markRequired($elTpl, $element->isRequired()); $elTpl = $this->outputError($elTpl, $element->getError()); return $this->outputLabel($elTpl, $element->getLabel()); }