/** * @param \Exception $e */ public function onExceptionShowErrorPage(\Exception $e) { try { $errorUrl = sprintf("/%s/%s", $this->config->get('errors.controller', 'errors'), $this->config->get('errors.action', 'error')); $request = new HTTP\Request($errorUrl); $request->setParam('exception', $e); $this->webApp->dispatch($request); } catch (\Exception $e2) { $this->onExceptionAbort($e); } }
/** * @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()); }
/** * Return the request. If none was set, a request is assemble * by the given HTTP data. * * @return \Hynage\HTTP\Request */ public function getRequest() { if (null === $this->_request) { $request = Request::getCurrent(); $this->setRequest($request); } return $this->_request; }