1
0
mirror of https://github.com/flarum/core.git synced 2025-08-10 10:24:46 +02:00

chore: adapt whoops formatter

This commit is contained in:
Sami Mazouz
2023-08-11 14:20:18 +01:00
parent 495b24a5aa
commit 0ce33c3ec0
4 changed files with 15 additions and 10 deletions

View File

@@ -9,8 +9,8 @@
namespace Flarum\Foundation\ErrorHandling;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
interface HttpFormatter
{

View File

@@ -10,8 +10,8 @@
namespace Flarum\Foundation\ErrorHandling;
use Flarum\Api\JsonApiResponse;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Tobscure\JsonApi\Document;
/**

View File

@@ -12,9 +12,9 @@ namespace Flarum\Foundation\ErrorHandling;
use Flarum\Locale\TranslatorInterface;
use Flarum\Settings\SettingsRepositoryInterface;
use Illuminate\Contracts\View\Factory as ViewFactory;
use Illuminate\Http\Request;
use Laminas\Diactoros\Response\HtmlResponse;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Symfony\Component\HttpFoundation\Response;
/**
* A formatter for turning caught exceptions into "pretty" HTML error pages.
@@ -45,7 +45,7 @@ class ViewFormatter implements HttpFormatter
->with('error', $error->getException())
->with('message', $this->getMessage($error));
return new HtmlResponse($view->render(), $error->getStatusCode());
return new \Illuminate\Http\Response($view->render(), $error->getStatusCode());
}
private function determineView(HandledError $error): string

View File

@@ -9,9 +9,10 @@
namespace Flarum\Foundation\ErrorHandling;
use Flarum\Http\RequestUtil;
use Franzl\Middleware\Whoops\WhoopsRunner;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
/**
* Handle errors using the Whoops error handler for debugging.
@@ -26,7 +27,11 @@ class WhoopsFormatter implements HttpFormatter
{
public function format(HandledError $error, Request $request): Response
{
return WhoopsRunner::handle($error->getException(), $request)
$psr7Request = RequestUtil::toPsr7($request);
$psr7Response = WhoopsRunner::handle($error->getException(), $psr7Request)
->withStatus($error->getStatusCode());
return RequestUtil::responseToSymfony($psr7Response);
}
}