X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/c6ad16dba657c82512ae495a4a38b99b8cfa9eeb..refs/heads/development:/app/Exceptions/NotifyException.php diff --git a/app/Exceptions/NotifyException.php b/app/Exceptions/NotifyException.php index ced478090..b62b8fde6 100644 --- a/app/Exceptions/NotifyException.php +++ b/app/Exceptions/NotifyException.php @@ -4,32 +4,39 @@ namespace BookStack\Exceptions; use Exception; use Illuminate\Contracts\Support\Responsable; +use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface; -class NotifyException extends Exception implements Responsable +class NotifyException extends Exception implements Responsable, HttpExceptionInterface { public $message; - public $redirectLocation; - protected $status; + public string $redirectLocation; + protected int $status; - /** - * NotifyException constructor. - */ public function __construct(string $message, string $redirectLocation = '/', int $status = 500) { $this->message = $message; $this->redirectLocation = $redirectLocation; $this->status = $status; + parent::__construct(); } /** - * Get the desired status code for this exception. + * Get the desired HTTP status code for this exception. */ - public function getStatus(): int + public function getStatusCode(): int { return $this->status; } + /** + * Get the desired HTTP headers for this exception. + */ + public function getHeaders(): array + { + return []; + } + /** * Send the response for this type of exception. * @@ -41,7 +48,7 @@ class NotifyException extends Exception implements Responsable // Front-end JSON handling. API-side handling managed via handler. if ($request->wantsJson()) { - return response()->json(['error' => $message], 403); + return response()->json(['error' => $message], $this->getStatusCode()); } if (!empty($message)) {