/** * @param \Hynage\HTTP\Request $request * @return bool */ public function isValid(Request $request) { if (!$request->isPost()) { return false; } // Set values foreach ($this->_elements as $e) { if ($request->hasPost($e->getName())) { $e->setValue($request->getPost($e->getName())); } } // Validate foreach ($this->_elements as $element) { if (!$element->isValid()) { foreach ($element->getErrors() as $error) { $this->addError("<strong>{$element->getLabel()}:</strong> {$error}"); } } } return 0 == count($this->getErrors()); }