44 lines
995 B
PHP
44 lines
995 B
PHP
<?php
|
||
/**
|
||
* @package Bicycle
|
||
* @author Egor Isaev
|
||
* @description HTTPException_403.php
|
||
* @copyright (c) 04/06/2026
|
||
*/
|
||
|
||
namespace System\Classes\HTTP\Exception;
|
||
|
||
use System\Classes\Core;
|
||
use System\Classes\HTTP\HTTPException;
|
||
use System\Classes\Response;
|
||
|
||
/**
|
||
* 403 Forbidden: рендерит шаблон view/errors/403.html.
|
||
*/
|
||
class HTTPException_403 extends HTTPException
|
||
{
|
||
/** @var int HTTP-код */
|
||
protected int $_code = 403;
|
||
|
||
/**
|
||
* Формирует Response 403 с телом из шаблона ошибки.
|
||
*
|
||
* @return Response
|
||
*/
|
||
public function getResponse(): Response
|
||
{
|
||
http_response_code(403);
|
||
$response = new Response(403);
|
||
$view = Core::findFile('view/errors', '403', 'html');
|
||
|
||
if ($view) {
|
||
ob_start();
|
||
$message = $this->getMessage();
|
||
include $view;
|
||
$response->body(ob_get_clean());
|
||
}
|
||
|
||
return $response;
|
||
}
|
||
}
|