diff --git a/src/Api/Actions/SerializeAction.php b/src/Api/Actions/SerializeAction.php index fe26a45fd..a1f28562c 100644 --- a/src/Api/Actions/SerializeAction.php +++ b/src/Api/Actions/SerializeAction.php @@ -3,6 +3,7 @@ use Flarum\Api\Request; use Flarum\Api\JsonApiRequest; use Flarum\Api\JsonApiResponse; +use Flarum\Api\Events\WillRespond; use Tobscure\JsonApi\SerializerInterface; use Tobscure\JsonApi\Criteria; use Illuminate\Http\Response; @@ -71,6 +72,8 @@ abstract class SerializeAction extends JsonApiAction $data = $this->data($request, $response = new JsonApiResponse); + event(new WillRespond($this, $data, $request, $response)); + $serializer = new static::$serializer($request->actor, $request->include, $request->link); $response->content->setData($this->serialize($serializer, $data)); diff --git a/src/Api/Events/WillRespond.php b/src/Api/Events/WillRespond.php new file mode 100644 index 000000000..6519c8d7b --- /dev/null +++ b/src/Api/Events/WillRespond.php @@ -0,0 +1,20 @@ +action = $action; + $this->data = &$data; + $this->request = $request; + $this->response = $response; + } +}