Skip to content

Commit b734f34

Browse files
committed
Refactor edit user
1 parent 7977d97 commit b734f34

File tree

13 files changed

+242
-268
lines changed

13 files changed

+242
-268
lines changed

src/Api/LinkCollection/Service/LinkCollectionService.php

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public function getAllLinks(ServerRequestInterface $request): ApiResult
5454
{
5555
$mustRef = $request->getQueryParams()['mustRef'] ?? false;
5656

57-
$links = $this->repository->getAll($mustRef);
57+
$links = $this->repository->getAll();
5858

5959
if ($links->count() === 0) {
6060
return ApiResult::from(
@@ -63,7 +63,12 @@ public function getAllLinks(ServerRequestInterface $request): ApiResult
6363
);
6464
}
6565

66-
return ApiResult::from(JsonResult::from('Links fetched successfully', ['links' => $links->toArray()]));
66+
return ApiResult::from(
67+
JsonResult::from('Links fetched successfully', [
68+
'links' => $links->toArray($mustRef)
69+
]
70+
)
71+
);
6772
}
6873

6974
public function createLink(ServerRequestInterface $request): ApiResult
@@ -122,7 +127,7 @@ public function disableLink(array $params): ApiResult
122127

123128
public function editLink(ServerRequestInterface $request): ApiResult
124129
{
125-
$linkId = (int) $request->getAttribute('linkId');
130+
$linkId = (int)$request->getAttribute('linkId');
126131

127132
$linkItem = $this->repository->getById(LinkId::fromInt($linkId));
128133

@@ -157,7 +162,7 @@ private function checkUserHasChanges(LinkItem $linkItem, array $parsedBody): voi
157162
}
158163

159164
if (isset($parsedBody['isActive'])) {
160-
$linkMetaData->setIsActive((bool) $parsedBody['isActive']);
165+
$linkMetaData->setIsActive((bool)$parsedBody['isActive']);
161166
}
162167

163168
if (array_key_exists('iconName', $parsedBody)) {
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,17 @@
11
<?php
22

3-
namespace LukaLtaApi\Api\User\Create;
3+
namespace LukaLtaApi\Api\User\Action;
44

55
use LukaLtaApi\Api\ApiAction;
66
use LukaLtaApi\Api\RequestValidator;
7-
use LukaLtaApi\Api\User\Create\Service\CreateUserService;
8-
use LukaLtaApi\Value\Result\ApiResult;
9-
use LukaLtaApi\Value\Result\JsonResult;
10-
use LukaLtaApi\Value\User\UserEmail;
11-
use LukaLtaApi\Value\User\UserPassword;
7+
use LukaLtaApi\Api\User\Service\UserService;
128
use Psr\Http\Message\ResponseInterface;
139
use Psr\Http\Message\ServerRequestInterface;
1410

1511
class CreateUserAction extends ApiAction
1612
{
1713
public function __construct(
18-
private readonly CreateUserService $service,
14+
private readonly UserService $service,
1915
private readonly RequestValidator $validator,
2016
) {
2117
}
@@ -29,11 +25,6 @@ protected function execute(ServerRequestInterface $request, ResponseInterface $r
2925

3026
$this->validator->validate($request, $rules);
3127

32-
$this->service->createUser(
33-
UserEmail::from($request->getParsedBody()['email']),
34-
$request->getParsedBody()['password']
35-
);
36-
37-
return ApiResult::from(JsonResult::from('User created'))->getResponse($response);
28+
return $this->service->createUser($request->getParsedBody())->getResponse($response);
3829
}
3930
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace LukaLtaApi\Api\User\Action;
6+
7+
use LukaLtaApi\Api\ApiAction;
8+
use LukaLtaApi\Api\User\Service\UserService;
9+
use Psr\Http\Message\ResponseInterface;
10+
use Psr\Http\Message\ServerRequestInterface;
11+
12+
class GetAllUsersAction extends ApiAction
13+
{
14+
public function __construct(
15+
private readonly UserService $service
16+
) {
17+
}
18+
19+
protected function execute(ServerRequestInterface $request, ResponseInterface $response): ResponseInterface
20+
{
21+
return $this->service->getAllUsers()->getResponse($response);
22+
}
23+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace LukaLtaApi\Api\User\Action;
6+
7+
use LukaLtaApi\Api\ApiAction;
8+
use LukaLtaApi\Api\User\Service\UserService;
9+
use Psr\Http\Message\ResponseInterface;
10+
use Psr\Http\Message\ServerRequestInterface;
11+
12+
class GetAvatarAction extends ApiAction
13+
{
14+
public function __construct(
15+
private readonly UserService $service,
16+
) {
17+
}
18+
19+
protected function execute(ServerRequestInterface $request, ResponseInterface $response): ResponseInterface
20+
{
21+
return $this->service->getAvatar($request, $response);
22+
}
23+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace LukaLtaApi\Api\User\Action;
4+
5+
use LukaLtaApi\Api\ApiAction;
6+
use LukaLtaApi\Api\RequestValidator;
7+
use LukaLtaApi\Api\User\Service\UserService;
8+
use Psr\Http\Message\ResponseInterface;
9+
use Psr\Http\Message\ServerRequestInterface;
10+
11+
class UpdateUserAction extends ApiAction
12+
{
13+
public function __construct(
14+
private readonly UserService $service,
15+
private readonly RequestValidator $validator,
16+
) {
17+
}
18+
19+
protected function execute(ServerRequestInterface $request, ResponseInterface $response): ResponseInterface
20+
{
21+
$rules = [
22+
'email' => ['required' => true, 'location' => RequestValidator::LOCATION_BODY],
23+
'avatarUrl' => ['required' => false, 'location' => RequestValidator::LOCATION_BODY],
24+
];
25+
26+
$this->validator->validate($request, $rules);
27+
28+
return $this->service->updateUser($request)->getResponse($response);
29+
}
30+
}

src/Api/User/Avatar/GetAvatarAction.php

Lines changed: 0 additions & 36 deletions
This file was deleted.

src/Api/User/Create/Service/CreateUserService.php

Lines changed: 0 additions & 35 deletions
This file was deleted.

src/Api/User/GetAll/GetAllUsersAction.php

Lines changed: 0 additions & 38 deletions
This file was deleted.

src/Api/User/GetAll/Service/GetAllUsersService.php

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)