Skip to content

Commit bf0219c

Browse files
committed
ISSUE-345: fix createdAt/updatedAt
1 parent 0a65716 commit bf0219c

17 files changed

+51
-35
lines changed

config/services/managers.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,7 @@ services:
3131
PhpList\RestBundle\Service\Manager\TemplateImageManager:
3232
autowire: true
3333
autoconfigure: true
34+
35+
PhpList\RestBundle\Service\Manager\AdministratorManager:
36+
autowire: true
37+
autoconfigure: true

config/services/normalizers.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,7 @@ services:
3838
PhpList\RestBundle\Serializer\TemplateNormalizer:
3939
tags: [ 'serializer.normalizer' ]
4040
autowire: true
41+
42+
PhpList\RestBundle\Serializer\AdministratorNormalizer:
43+
tags: [ 'serializer.normalizer' ]
44+
autowire: true

src/Serializer/AdministratorNormalizer.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,17 @@
44

55
namespace PhpList\RestBundle\Serializer;
66

7+
use DateTimeInterface;
78
use InvalidArgumentException;
89
use PhpList\Core\Domain\Model\Identity\Administrator;
910
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
1011

1112
class AdministratorNormalizer implements NormalizerInterface
1213
{
14+
/**
15+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
16+
* @throws InvalidArgumentException
17+
*/
1318
public function normalize($object, string $format = null, array $context = []): array
1419
{
1520
if (!$object instanceof Administrator) {
@@ -20,11 +25,14 @@ public function normalize($object, string $format = null, array $context = []):
2025
'id' => $object->getId(),
2126
'login_name' => $object->getLoginName(),
2227
'email' => $object->getEmail(),
23-
'super_admin' => $object->isSuperAdmin(),
24-
'created_at' => $object->getCreatedAt()?->format(\DateTimeInterface::ATOM),
28+
'super_admin' => $object->isSuperUser(),
29+
'created_at' => $object->getCreatedAt()?->format(DateTimeInterface::ATOM),
2530
];
2631
}
2732

33+
/**
34+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
35+
*/
2836
public function supportsNormalization($data, string $format = null): bool
2937
{
3038
return $data instanceof Administrator;

src/Serializer/SubscriberListNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public function normalize($object, string $format = null, array $context = []):
2121
return [
2222
'id' => $object->getId(),
2323
'name' => $object->getName(),
24-
'creation_date' => $object->getCreationDate()->format('Y-m-d\TH:i:sP'),
24+
'creation_date' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
2525
'description' => $object->getDescription(),
2626
'list_position' => $object->getListPosition(),
2727
'subject_prefix' => $object->getSubjectPrefix(),

src/Serializer/SubscriberNormalizer.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public function normalize($object, string $format = null, array $context = []):
2222
return [
2323
'id' => $object->getId(),
2424
'email' => $object->getEmail(),
25-
'creation_date' => $object->getCreationDate()->format('Y-m-d\TH:i:sP'),
25+
'created_at' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
2626
'confirmed' => $object->isConfirmed(),
2727
'blacklisted' => $object->isBlacklisted(),
2828
'bounce_count' => $object->getBounceCount(),
@@ -34,9 +34,9 @@ public function normalize($object, string $format = null, array $context = []):
3434
'id' => $subscription->getSubscriberList()->getId(),
3535
'name' => $subscription->getSubscriberList()->getName(),
3636
'description' => $subscription->getSubscriberList()->getDescription(),
37-
'creation_date' => $subscription->getSubscriberList()->getCreationDate()->format('Y-m-d\TH:i:sP'),
37+
'created_at' => $subscription->getSubscriberList()->getCreatedAt()->format('Y-m-d\TH:i:sP'),
3838
'public' => $subscription->getSubscriberList()->isPublic(),
39-
'subscription_date' => $subscription->getCreationDate()->format('Y-m-d\TH:i:sP'),
39+
'subscription_date' => $subscription->getCreatedAt()->format('Y-m-d\TH:i:sP'),
4040
];
4141
}, $object->getSubscriptions()->toArray()),
4242
];

src/Serializer/SubscriptionNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public function normalize($object, string $format = null, array $context = []):
3232
return [
3333
'subscriber' => $this->subscriberNormalizer->normalize($object->getSubscriber()),
3434
'subscriber_list' => $this->subscriberListNormalizer->normalize($object->getSubscriberList()),
35-
'subscription_date' => $object->getCreationDate()->format('Y-m-d\TH:i:sP'),
35+
'subscription_date' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
3636
];
3737
}
3838

src/Service/Manager/AdministratorManager.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@
88
use PhpList\Core\Domain\Model\Identity\Administrator;
99
use PhpList\RestBundle\Entity\Request\CreateAdministratorRequest;
1010
use PhpList\RestBundle\Entity\Request\UpdateAdministratorRequest;
11-
use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface;
11+
use PhpList\Core\Security\HashGenerator;
1212

1313
class AdministratorManager
1414
{
1515
private EntityManagerInterface $entityManager;
16-
private UserPasswordHasherInterface $passwordHasher;
16+
private HashGenerator $hashGenerator;
1717

18-
public function __construct(EntityManagerInterface $entityManager, UserPasswordHasherInterface $passwordHasher)
18+
public function __construct(EntityManagerInterface $entityManager, HashGenerator $hashGenerator)
1919
{
2020
$this->entityManager = $entityManager;
21-
$this->passwordHasher = $passwordHasher;
21+
$this->hashGenerator = $hashGenerator;
2222
}
2323

2424
public function createAdministrator(CreateAdministratorRequest $dto): Administrator
@@ -27,7 +27,7 @@ public function createAdministrator(CreateAdministratorRequest $dto): Administra
2727
$administrator->setLoginName($dto->loginName);
2828
$administrator->setEmail($dto->email);
2929
$administrator->setSuperUser($dto->superUser);
30-
$hashedPassword = $this->passwordHasher->hashPassword($administrator, $dto->password);
30+
$hashedPassword = $this->hashGenerator->createPasswordHash($dto->password);
3131
$administrator->setPasswordHash($hashedPassword);
3232

3333
$this->entityManager->persist($administrator);
@@ -48,7 +48,7 @@ public function updateAdministrator(Administrator $administrator, UpdateAdminist
4848
$administrator->setSuperUser($dto->superAdmin);
4949
}
5050
if ($dto->password !== null) {
51-
$hashedPassword = $this->passwordHasher->hashPassword($administrator, $dto->password);
51+
$hashedPassword = $this->hashGenerator->createPasswordHash($dto->password);
5252
$administrator->setPasswordHash($hashedPassword);
5353
}
5454

tests/Integration/Controller/Fixtures/Identity/AdministratorFixture.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,14 @@ public function load(ObjectManager $manager): void
3939
$admin = new Administrator();
4040
$this->setSubjectId($admin, (int)$row['id']);
4141
$admin->setLoginName($row['loginname']);
42-
$admin->setEmailAddress($row['email']);
42+
$admin->setEmail($row['email']);
4343
$admin->setPasswordHash($row['password']);
4444
$admin->setDisabled((bool) $row['disabled']);
4545
$admin->setSuperUser((bool) $row['superuser']);
4646

4747
$manager->persist($admin);
4848

49-
$this->setSubjectProperty($admin, 'creationDate', new DateTime($row['created']));
49+
$this->setSubjectProperty($admin, 'createdAt', new DateTime($row['created']));
5050
$this->setSubjectProperty($admin, 'passwordChangeDate', new DateTime($row['passwordchanged']));
5151
} while (true);
5252

tests/Integration/Controller/Fixtures/Identity/AdministratorTokenFixture.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public function load(ObjectManager $manager): void
5353
$manager->persist($adminToken);
5454

5555
$this->setSubjectProperty($adminToken, 'expiry', new DateTime($row['expires']));
56-
$this->setSubjectProperty($adminToken, 'creationDate', (bool) $row['entered']);
56+
$this->setSubjectProperty($adminToken, 'createdAt', (bool) $row['entered']);
5757
} while (true);
5858

5959
fclose($handle);

tests/Integration/Controller/Fixtures/Messaging/MessageFixture.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public function load(ObjectManager $manager): void
101101
$this->setSubjectProperty($message, 'uuid', $row['uuid']);
102102

103103
$manager->persist($message);
104-
$this->setSubjectProperty($message, 'modificationDate', new DateTime($row['modified']));
104+
$this->setSubjectProperty($message, 'updatedAt', new DateTime($row['modified']));
105105
} while (true);
106106

107107
fclose($handle);

0 commit comments

Comments
 (0)