From d513d294544b8177933e558b55685f81974f7f6e Mon Sep 17 00:00:00 2001 From: Moreau Elise <moreau.elise13@gmail.com> Date: Sun, 18 Oct 2020 14:16:06 +0200 Subject: [PATCH] create a new message controller --- .../Actions/Message/CreateMessageAction.php | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/Application/Actions/Message/CreateMessageAction.php b/src/Application/Actions/Message/CreateMessageAction.php index a49e791..2a8d9e5 100755 --- a/src/Application/Actions/Message/CreateMessageAction.php +++ b/src/Application/Actions/Message/CreateMessageAction.php @@ -6,6 +6,7 @@ namespace App\Application\Actions\Message; use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; use App\Domain\Message\Message ; +use DateTime; class CreateMessageAction extends MessageAction { @@ -16,18 +17,24 @@ class CreateMessageAction extends MessageAction { $parsedRequestBody = (array)$this->request->getParsedBody(); - $id_receiver = $parsedRequestBody['id_receiver']; - $id_transmitter = $parsedRequestBody['id_transmitter']; - $date = $parsedRequestBody['date']; + $transmitter = $this->userRepository->find($_SESSION['userId']); + + $groupId = (int) $this->resolveArg('id'); + $receiver = $this->groupRepository->find($groupId); + + $date = new DateTime('now');; $body = $parsedRequestBody['body']; - $message = new Message(null, $id_receiver, $id_transmitter, $date, $body); + $message = new Message(null, $receiver, $transmitter, $date, $body); $this->em->persist($message); $this->em->flush(); $this->logger->info("Message has been created."); - return $this->respondWithData($message); + + return $this->response + ->withHeader('Location', '/groups/' . $groupId . '/messages') + ->withStatus(302); } } -- GitLab