code fixes

This commit is contained in:
Dennis Eichhorn 2024-03-15 20:24:38 +00:00
parent e4cbc97e8e
commit 4e3c6c1f1a
2 changed files with 6 additions and 31 deletions

View File

@ -63,14 +63,6 @@ final class ApiController extends Controller
} }
$session = $this->createSessionFromRequest($request); $session = $this->createSessionFromRequest($request);
if ($session === null) {
$response->header->status = RequestStatusCode::R_403;
$this->createInvalidCreateResponse($request, $response, $session);
return;
}
$this->createModel($request->header->account, $session, SessionMapper::class, 'session', $request->getOrigin()); $this->createModel($request->header->account, $session, SessionMapper::class, 'session', $request->getOrigin());
$this->createStandardCreateResponse($request, $response, $session); $this->createStandardCreateResponse($request, $response, $session);
} }
@ -80,11 +72,11 @@ final class ApiController extends Controller
* *
* @param RequestAbstract $request Request * @param RequestAbstract $request Request
* *
* @return null|Session * @return Session
* *
* @since 1.0.0 * @since 1.0.0
*/ */
private function createSessionFromRequest(RequestAbstract $request) : ?Session private function createSessionFromRequest(RequestAbstract $request) : Session
{ {
$account = $request->getDataInt('account') ?? $request->header->account; $account = $request->getDataInt('account') ?? $request->header->account;
@ -97,7 +89,7 @@ final class ApiController extends Controller
: new \DateTime('now'); : new \DateTime('now');
$element = new SessionElement($session, $dt); $element = new SessionElement($session, $dt);
$element->status = ClockingStatus::tryFromValue($request->getDataInt('status')) ?? ClockingStatus::OFFICE; $element->status = ClockingStatus::tryFromValue($request->getDataInt('status')) ?? ClockingStatus::START;
$session->addSessionElement($element); $session->addSessionElement($element);
@ -125,12 +117,14 @@ final class ApiController extends Controller
return; return;
} }
/*
if (!empty($val = $this->validateSessionElementCreate($request))) { if (!empty($val = $this->validateSessionElementCreate($request))) {
$response->header->status = RequestStatusCode::R_400; $response->header->status = RequestStatusCode::R_400;
$this->createInvalidCreateResponse($request, $response, $val); $this->createInvalidCreateResponse($request, $response, $val);
return; return;
} }
*/
if ($request->hasData('account') if ($request->hasData('account')
&& $request->getDataInt('account') !== $request->header->account && $request->getDataInt('account') !== $request->header->account
@ -162,25 +156,6 @@ final class ApiController extends Controller
$this->createStandardCreateResponse($request, $response, $element); $this->createStandardCreateResponse($request, $response, $element);
} }
/**
* Validate session element create request
*
* @param RequestAbstract $request Request
*
* @return array<string, bool> Returns the validation array of the request
*
* @since 1.0.0
*/
private function validateSessionElementCreate(RequestAbstract $request) : array
{
$val = [];
if (false) {
return $val;
}
return [];
}
/** /**
* Method to create session element from request. * Method to create session element from request.
* *

View File

@ -86,7 +86,7 @@ class Session implements \JsonSerializable
/** /**
* Session start * Session start
* *
* @var \DateTime * @var \DateTimeImmutable
* @since 1.0.0 * @since 1.0.0
*/ */
public \DateTimeImmutable $createdAt; public \DateTimeImmutable $createdAt;