/** * Instantiates content template for current path, action, view and router * controller * * @return Oops_Template */ function _getFilterTemplate() { $templateName = "_filter/" . $this->_params['ext']; if (sizeof($this->_params['uri_parts'])) { $templateName .= '/' . join('/', $this->_params['uri_parts']); } $templateName .= "/" . $this->_params['action'] . ".php"; $template = Oops_Template::getInstance($templateName); return $template; }
/** * Should set body to $response, may change code * * @param Oops_Server_Response $response */ public function handle($response) { // find template, use it or call prev handler if ($response->code >= 400) { /** * * @todo check requested view, use same View */ $templateData = array('errormessage' => $response->message, 'errorcode' => $response->code); $errorTpl = Oops_Template::getInstance('_errorpage/' . $response->code . '.php'); if ($errorTpl->isValid()) { $response->setBody($errorTpl->Out($templateData)); } } }
/** * Call another template */ protected function call($tplname, $data = null) { $template = Oops_Template::getInstance($tplname); if ($template->isValid()) { if (is_null($data)) { $data =& $this->Data; } return $template->out($data); } }