impl. tests and fix validation status code

This commit is contained in:
Dennis Eichhorn 2020-10-06 21:51:40 +02:00
parent 64db17ce88
commit b971537a3f

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* Orange Management * Orange Management
* *
@ -10,6 +11,7 @@
* @version 1.0.0 * @version 1.0.0
* @link https://orange-management.org * @link https://orange-management.org
*/ */
declare(strict_types=1); declare(strict_types=1);
namespace Modules\Dashboard\Controller; namespace Modules\Dashboard\Controller;
@ -23,6 +25,7 @@ use phpOMS\Message\NotificationLevel;
use phpOMS\Message\RequestAbstract; use phpOMS\Message\RequestAbstract;
use phpOMS\Message\ResponseAbstract; use phpOMS\Message\ResponseAbstract;
use phpOMS\Model\Message\FormValidation; use phpOMS\Model\Message\FormValidation;
use phpOMS\Message\Http\RequestStatusCode;
/** /**
* Api controller for the dashboard module. * Api controller for the dashboard module.
@ -51,11 +54,10 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
private function validateBoardCreate(RequestAbstract $request) : array private function validateBoardCreate(RequestAbstract $request): array
{ {
$val = []; $val = [];
if (($val['title'] = empty($request->getData('title'))) if (($val['title'] = empty($request->getData('title')))) {
) {
return $val; return $val;
} }
@ -75,10 +77,11 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
public function apiBoardCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void public function apiBoardCreate(RequestAbstract $request, ResponseAbstract $response, $data = null): void
{ {
if (!empty($val = $this->validateBoardCreate($request))) { if (!empty($val = $this->validateBoardCreate($request))) {
$response->set($request->getUri()->__toString(), new FormValidation($val)); $response->set($request->getUri()->__toString(), new FormValidation($val));
$response->getHeader()->setStatusCode(RequestStatusCode::R_400);
return; return;
} }
@ -97,7 +100,7 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
private function createBoardFromRequest(RequestAbstract $request) : DashboardBoard private function createBoardFromRequest(RequestAbstract $request): DashboardBoard
{ {
$board = new DashboardBoard(); $board = new DashboardBoard();
$board->setTitle((string) ($request->getData('title') ?? '')); $board->setTitle((string) ($request->getData('title') ?? ''));
@ -116,7 +119,7 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
private function validateComponentCreate(RequestAbstract $request) : array private function validateComponentCreate(RequestAbstract $request): array
{ {
$val = []; $val = [];
if (($val['board'] = empty($request->getData('board'))) if (($val['board'] = empty($request->getData('board')))
@ -141,10 +144,11 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
public function apiComponentCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void public function apiComponentCreate(RequestAbstract $request, ResponseAbstract $response, $data = null): void
{ {
if (!empty($val = $this->validateComponentCreate($request))) { if (!empty($val = $this->validateComponentCreate($request))) {
$response->set($request->getUri()->__toString(), new FormValidation($val)); $response->set($request->getUri()->__toString(), new FormValidation($val));
$response->getHeader()->setStatusCode(RequestStatusCode::R_400);
return; return;
} }
@ -163,7 +167,7 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
private function createComponentFromRequest(RequestAbstract $request) : DashboardComponent private function createComponentFromRequest(RequestAbstract $request): DashboardComponent
{ {
$component = new DashboardComponent(); $component = new DashboardComponent();
$component->setBoard((int) ($request->getData('board') ?? 0)); $component->setBoard((int) ($request->getData('board') ?? 0));
@ -186,7 +190,7 @@ final class ApiController extends Controller
* *
* @since 1.0.0 * @since 1.0.0
*/ */
public function apiComponentAdd(RequestAbstract $request, ResponseAbstract $response, $data = null) : void public function apiComponentAdd(RequestAbstract $request, ResponseAbstract $response, $data = null): void
{ {
} }
} }