1
0
mirror of https://github.com/flarum/core.git synced 2025-05-05 15:07:17 +02:00

Use HtmlResponse in AbstractHtmlController

This commit is contained in:
Toby Zerner 2017-11-29 12:54:11 +10:30
parent a065c8e6f5
commit 295193eb3c

View File

@ -11,28 +11,30 @@
namespace Flarum\Http\Controller; namespace Flarum\Http\Controller;
use Illuminate\Contracts\Support\Renderable;
use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ServerRequestInterface as Request;
use Zend\Diactoros\Response; use Zend\Diactoros\Response\HtmlResponse;
abstract class AbstractHtmlController implements ControllerInterface abstract class AbstractHtmlController implements ControllerInterface
{ {
/** /**
* @param Request $request * @param Request $request
* @return \Zend\Diactoros\Response * @return HtmlResponse
*/ */
public function handle(Request $request) public function handle(Request $request)
{ {
$view = $this->render($request); $view = $this->render($request);
$response = new Response; if ($view instanceof Renderable) {
$response->getBody()->write($view); $view = $view->render();
}
return $response; return new HtmlResponse($view);
} }
/** /**
* @param Request $request * @param Request $request
* @return \Illuminate\Contracts\Support\Renderable * @return string|Renderable
*/ */
abstract protected function render(Request $request); abstract protected function render(Request $request);
} }