public function render($name, $variables = null, $statusCode = 200) { $basename = basename($name); $parts = explode('.', $basename); $parts_count = count($parts); $format = null; if ($parts_count > 1) { if ($parts[$parts_count - 1] == 'php') { if ($parts_count > 2) { $format = strtolower($parts[$parts_count - 2]); } } else { $format = strtolower($parts[$parts_count - 1]); } } $response = new ArkResponse(ark('view')->render($name, $variables, true), $statusCode); $response->setCharset(ark_config('charset', 'UTF-8')); if ($format && $format != 'html' && $format != 'htm' && ($content_type = ArkMimetype::getMimeTypeByFileExt($format))) { $response->header('Content-Type', $content_type); } return $response; }
public function handleExceptionDefault($exception) { $view = new ArkViewPHP(); $http_code = 500; $message = ArkResponse::getStatusMessageByCode($http_code); if (ARK_APP_DEBUG) { $message .= '<br /><pre>' . $exception . '</pre>'; } return new ArkResponse($view->render(ARK_PATH . '/internal/view/http_error.html.php', array('code' => $http_code, 'title' => ArkResponse::getStatusTextByCode($http_code), 'message' => $message), true), $http_code); }
public static function getHttpErrorResponse($http_code) { $view = new ArkViewPHP(); return new ArkResponse($view->render(ARK_PATH . '/internal/view/http_error.html.php', array('code' => $http_code, 'title' => ArkResponse::getStatusTextByCode($http_code), 'message' => ArkResponse::getStatusMessageByCode($http_code)), true), $http_code); }