/** * Render field errors. * * Checks {@see FieldInterface::shouldRendererRenderErrors()} * before rendering. * * @param FieldInterface $field The field object to be rendered. * @return string The field specific errors, rendered in HTML, safe for output. * */ public function renderFieldErrors(FieldInterface $field) { if (!$field->shouldRendererRenderErrors()) { return; } $errors = $field->getErrorMessages(); $errorsRendered = '<div class="fieldErrorsContainer"><ul>'; foreach ($errors as $message) { $message = htmlentities($message->get(), ENT_QUOTES); $errorsRendered .= "<li>{$message}</li>"; } $errorsRendered .= '</ul></div>'; return $errorsRendered; }
/** * Add a field to this form. * * Add as many fields as you need: * * <code> * $form->addField($usernameField); * $form->addField($passwordField); * </code> * * @param Field $field Instance of FieldInterface. * */ public function addField(FieldInterface $field) { $id = $field->getID(); $label = $field->getLabel(); $this->labels[$id] = $label; $this->fields[$id] = $field; }