From 68eb7d1400529b995fbe095e2bc92448e2312f86 Mon Sep 17 00:00:00 2001 From: Jeroen Thora Date: Sat, 16 Oct 2021 12:04:08 +0200 Subject: [PATCH] [AllBundles] Fix symfony 5 deprecations on username method --- .../EventListener/LoginListener.php | 2 +- .../email/password_reset.txt.twig | 2 +- .../forced_change_password/success.html.twig | 2 +- .../views/authentication/layout.html.twig | 2 +- .../Resources/views/layout.html.twig | 2 +- .../EntityVersionLockRepository.php | 2 +- .../Service/EntityVersionLockService.php | 4 +- .../Service/EntityVersionLockServiceTest.php | 2 +- .../EventListener/LogPageEventsSubscriber.php | 52 +++++++------------ .../NodeAdmin/NodeVersionLockHelper.php | 4 +- .../Repository/NodeVersionLockRepository.php | 2 +- .../Controller/UsersController.php | 13 +++-- .../AdminList/ItemAction/delete.html.twig | 2 +- 13 files changed, 39 insertions(+), 52 deletions(-) diff --git a/src/Kunstmaan/AdminBundle/EventListener/LoginListener.php b/src/Kunstmaan/AdminBundle/EventListener/LoginListener.php index 43aeca5ea9..cb8a7a1cae 100644 --- a/src/Kunstmaan/AdminBundle/EventListener/LoginListener.php +++ b/src/Kunstmaan/AdminBundle/EventListener/LoginListener.php @@ -38,7 +38,7 @@ public function onSecurityInteractiveLogin(InteractiveLoginEvent $event) $user = $event->getAuthenticationToken()->getUser(); if ($user instanceof UserInterface) { - $this->logger->info(sprintf('%s successfully logged in to the cms', $user->getUsername())); + $this->logger->info(sprintf('%s successfully logged in to the cms', method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername())); $this->versionChecker->periodicallyCheck(); } } diff --git a/src/Kunstmaan/AdminBundle/Resources/views/authentication/email/password_reset.txt.twig b/src/Kunstmaan/AdminBundle/Resources/views/authentication/email/password_reset.txt.twig index 5d9edb7cf4..f2acae696e 100644 --- a/src/Kunstmaan/AdminBundle/Resources/views/authentication/email/password_reset.txt.twig +++ b/src/Kunstmaan/AdminBundle/Resources/views/authentication/email/password_reset.txt.twig @@ -1,5 +1,5 @@ {% autoescape false %} -Hello {{ user.username }}, +Hello {{ attribute(user, 'userIdentifier') is defined ? user.userIdentifier : user.username }}, We received a request to change the password associated with your account via the Forgot Password form on our website. diff --git a/src/Kunstmaan/AdminBundle/Resources/views/authentication/forced_change_password/success.html.twig b/src/Kunstmaan/AdminBundle/Resources/views/authentication/forced_change_password/success.html.twig index e66284662d..5c8f7b88e6 100644 --- a/src/Kunstmaan/AdminBundle/Resources/views/authentication/forced_change_password/success.html.twig +++ b/src/Kunstmaan/AdminBundle/Resources/views/authentication/forced_change_password/success.html.twig @@ -2,7 +2,7 @@ {% block login_content %}

- {{ 'security.change_password.success.message'|trans({'%username%': user.username}) }} + {{ 'security.change_password.success.message'|trans({'%username%': attribute(user, 'userIdentifier') is defined ? user.userIdentifier : user.username }) }}

{{ 'security.change_password.success.continue'|trans }} diff --git a/src/Kunstmaan/AdminBundle/Resources/views/authentication/layout.html.twig b/src/Kunstmaan/AdminBundle/Resources/views/authentication/layout.html.twig index 3ebc2f5f57..4a6b01cd24 100644 --- a/src/Kunstmaan/AdminBundle/Resources/views/authentication/layout.html.twig +++ b/src/Kunstmaan/AdminBundle/Resources/views/authentication/layout.html.twig @@ -49,7 +49,7 @@ {% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
{{ 'form.warning' | trans }}: - {{ 'security.general.logged_in_as'|trans({'%username%': app.user.username}) }} + {{ 'security.general.logged_in_as'|trans({'%username%': attribute(app.user, 'userIdentifier') is defined ? app.user.userIdentifier : app.user.username }} {{ 'security.general.logout'|trans }} diff --git a/src/Kunstmaan/AdminBundle/Resources/views/layout.html.twig b/src/Kunstmaan/AdminBundle/Resources/views/layout.html.twig index 93bc39f617..e139762ff7 100644 --- a/src/Kunstmaan/AdminBundle/Resources/views/layout.html.twig +++ b/src/Kunstmaan/AdminBundle/Resources/views/layout.html.twig @@ -15,7 +15,7 @@ {% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
{{ 'form.warning' | trans }}: - {{ 'security.login.logged_in_as'|trans({'%username%': app.user.username}) }} + {{ 'security.login.logged_in_as'|trans({'%username%': attribute(app.user, 'userIdentifier') is defined ? app.user.userIdentifier : app.user.username }) }} {{ 'security.login.logout'|trans }} diff --git a/src/Kunstmaan/AdminListBundle/Repository/EntityVersionLockRepository.php b/src/Kunstmaan/AdminListBundle/Repository/EntityVersionLockRepository.php index 6c2b5cdc47..ba4725633c 100644 --- a/src/Kunstmaan/AdminListBundle/Repository/EntityVersionLockRepository.php +++ b/src/Kunstmaan/AdminListBundle/Repository/EntityVersionLockRepository.php @@ -31,7 +31,7 @@ public function getLocksForLockableEntity(LockableEntity $entity, $threshold, Us if (!\is_null($userToExclude)) { $qb->andWhere('evl.owner <> :owner') - ->setParameter('owner', $userToExclude->getUsername()) + ->setParameter('owner', method_exists($userToExclude, 'getUserIdentifier') ? $userToExclude->getUserIdentifier() : $userToExclude->getUsername()) ; } diff --git a/src/Kunstmaan/AdminListBundle/Service/EntityVersionLockService.php b/src/Kunstmaan/AdminListBundle/Service/EntityVersionLockService.php index 6980e18d2d..9a7da5c9fb 100644 --- a/src/Kunstmaan/AdminListBundle/Service/EntityVersionLockService.php +++ b/src/Kunstmaan/AdminListBundle/Service/EntityVersionLockService.php @@ -80,13 +80,13 @@ protected function createEntityVersionLock(UserInterface $user, LockableEntity $ { /** @var EntityVersionLock $lock */ $lock = $this->objectManager->getRepository(EntityVersionLock::class)->findOneBy([ - 'owner' => $user->getUsername(), + 'owner' => method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(), 'lockableEntity' => $entity, ]); if (!$lock) { $lock = new EntityVersionLock(); } - $lock->setOwner($user->getUsername()); + $lock->setOwner(method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername()); $lock->setLockableEntity($entity); $lock->setCreatedAt(new \DateTime()); $this->objectManager->persist($lock); diff --git a/src/Kunstmaan/AdminListBundle/Tests/Service/EntityVersionLockServiceTest.php b/src/Kunstmaan/AdminListBundle/Tests/Service/EntityVersionLockServiceTest.php index 57b1e57f23..8342ce2288 100644 --- a/src/Kunstmaan/AdminListBundle/Tests/Service/EntityVersionLockServiceTest.php +++ b/src/Kunstmaan/AdminListBundle/Tests/Service/EntityVersionLockServiceTest.php @@ -80,7 +80,7 @@ protected function setUp(): void $entityVersionLock->setCreatedAt(new \DateTime()); $expiredEntityVersionLock = new EntityVersionLock(); - $expiredEntityVersionLock->setOwner($user->getUsername()); + $expiredEntityVersionLock->setOwner(method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername()); $expiredEntityVersionLock->setLockableEntity($outDatedEntity); $expiredEntityVersionLock->setCreatedAt(new \DateTime('-1 days')); diff --git a/src/Kunstmaan/NodeBundle/EventListener/LogPageEventsSubscriber.php b/src/Kunstmaan/NodeBundle/EventListener/LogPageEventsSubscriber.php index 239226a623..af04361b3e 100644 --- a/src/Kunstmaan/NodeBundle/EventListener/LogPageEventsSubscriber.php +++ b/src/Kunstmaan/NodeBundle/EventListener/LogPageEventsSubscriber.php @@ -38,26 +38,6 @@ public function __construct(Logger $logger, TokenStorageInterface $tokenStorage) $this->tokenStorage = $tokenStorage; } - /** - * Returns an array of event names this subscriber wants to listen to. - * - * The array keys are event names and the value can be: - * - * * The method name to call (priority defaults to 0) - * * An array composed of the method name to call and the priority - * * An array of arrays composed of the method names to call and respective - * priorities, or 0 if unset - * - * For instance: - * - * * array('eventName' => 'methodName') - * * array('eventName' => array('methodName', $priority)) - * * array('eventName' => array(array('methodName1', $priority), array('methodName2')) - * - * @return array The event names to listen to - * - * @api - */ public static function getSubscribedEvents() { return [ @@ -74,10 +54,7 @@ public static function getSubscribedEvents() ]; } - /** - * @return UserInterface - */ - private function getUser() + private function getUser(): UserInterface { if (\is_null($this->user)) { $this->user = $this->tokenStorage->getToken()->getUser(); @@ -88,51 +65,58 @@ private function getUser() public function onCopyPageTranslation(CopyPageTranslationNodeEvent $event) { - $this->logger->info(sprintf('%s just copied the page translation from %s (%d) to %s (%d) for node with id %d', $this->getUser()->getUsername(), $event->getOriginalLanguage(), $event->getOriginalPage()->getId(), $event->getNodeTranslation()->getLang(), $event->getPage()->getId(), $event->getNode()->getId())); + $this->logger->info(sprintf('%s just copied the page translation from %s (%d) to %s (%d) for node with id %d', $this->getUsername(), $event->getOriginalLanguage(), $event->getOriginalPage()->getId(), $event->getNodeTranslation()->getLang(), $event->getPage()->getId(), $event->getNode()->getId())); } public function onRecopyPageTranslation(RecopyPageTranslationNodeEvent $event) { - $this->logger->info(sprintf('%s just recopied the page translation from %s (%d) to %s (%d) for node with id %d', $this->getUser()->getUsername(), $event->getOriginalLanguage(), $event->getOriginalPage()->getId(), $event->getNodeTranslation()->getLang(), $event->getPage()->getId(), $event->getNode()->getId())); + $this->logger->info(sprintf('%s just recopied the page translation from %s (%d) to %s (%d) for node with id %d', $this->getUsername(), $event->getOriginalLanguage(), $event->getOriginalPage()->getId(), $event->getNodeTranslation()->getLang(), $event->getPage()->getId(), $event->getNode()->getId())); } public function onAddEmptyPageTranslation(NodeEvent $event) { - $this->logger->info(sprintf('%s just added an empty page translation (%d) for node with id %d in language %s', $this->getUser()->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just added an empty page translation (%d) for node with id %d in language %s', $this->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function postPublish(NodeEvent $event) { - $this->logger->info(sprintf('%s just published the page with id %d for node %d in language %s', $this->getUser()->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just published the page with id %d for node %d in language %s', $this->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function postUnPublish(NodeEvent $event) { - $this->logger->info(sprintf('%s just unpublished the page with id %d for node %d in language %s', $this->getUser()->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just unpublished the page with id %d for node %d in language %s', $this->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function postDelete(NodeEvent $event) { - $this->logger->info(sprintf('%s just deleted node with id %d', $this->getUser()->getUsername(), $event->getNode()->getId())); + $this->logger->info(sprintf('%s just deleted node with id %d', $this->getUsername(), $event->getNode()->getId())); } public function onAddNode(NodeEvent $event) { - $this->logger->info(sprintf('%s just added node with id %d in language %s', $this->getUser()->getUsername(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just added node with id %d in language %s', $this->getUsername(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function postPersist(NodeEvent $event) { - $this->logger->info(sprintf('%s just updated page with id %d for node %d in language %s', $this->getUser()->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just updated page with id %d for node %d in language %s', $this->getUsername(), $event->getPage()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function onCreatePublicVersion(NodeEvent $event) { - $this->logger->info(sprintf('%s just created a new public version %d for node %d in language %s', $this->getUser()->getUsername(), $event->getNodeVersion()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just created a new public version %d for node %d in language %s', $this->getUsername(), $event->getNodeVersion()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); } public function onCreateDraftVersion(NodeEvent $event) { - $this->logger->info(sprintf('%s just created a draft version %d for node %d in language %s', $this->getUser()->getUsername(), $event->getNodeVersion()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + $this->logger->info(sprintf('%s just created a draft version %d for node %d in language %s', $this->getUsername(), $event->getNodeVersion()->getId(), $event->getNode()->getId(), $event->getNodeTranslation()->getLang())); + } + + private function getUsername(): string + { + $user = $this->getUser(); + + return method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(); } } diff --git a/src/Kunstmaan/NodeBundle/Helper/NodeAdmin/NodeVersionLockHelper.php b/src/Kunstmaan/NodeBundle/Helper/NodeAdmin/NodeVersionLockHelper.php index 63d108c35f..00528ee8a3 100644 --- a/src/Kunstmaan/NodeBundle/Helper/NodeAdmin/NodeVersionLockHelper.php +++ b/src/Kunstmaan/NodeBundle/Helper/NodeAdmin/NodeVersionLockHelper.php @@ -88,14 +88,14 @@ protected function removeExpiredLocks(NodeTranslation $nodeTranslation) protected function createNodeVersionLock(BaseUser $user, NodeTranslation $nodeTranslation, $isPublicVersion) { $lock = $this->objectManager->getRepository(NodeVersionLock::class)->findOneBy([ - 'owner' => $user->getUsername(), + 'owner' => method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(), 'nodeTranslation' => $nodeTranslation, 'publicVersion' => $isPublicVersion, ]); if (!$lock) { $lock = new NodeVersionLock(); } - $lock->setOwner($user->getUsername()); + $lock->setOwner(method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername()); $lock->setNodeTranslation($nodeTranslation); $lock->setPublicVersion($isPublicVersion); $lock->setCreatedAt(new \DateTime()); diff --git a/src/Kunstmaan/NodeBundle/Repository/NodeVersionLockRepository.php b/src/Kunstmaan/NodeBundle/Repository/NodeVersionLockRepository.php index de831d6f9e..07a4736d8e 100644 --- a/src/Kunstmaan/NodeBundle/Repository/NodeVersionLockRepository.php +++ b/src/Kunstmaan/NodeBundle/Repository/NodeVersionLockRepository.php @@ -31,7 +31,7 @@ public function getLocksForNodeTranslation(NodeTranslation $nodeTranslation, $is if (!\is_null($userToExclude)) { $qb->andWhere('nvl.owner <> :owner') - ->setParameter('owner', $userToExclude->getUsername()) + ->setParameter('owner', method_exists($userToExclude, 'getUserIdentifier') ? $userToExclude->getUserIdentifier() : $userToExclude->getUsername()) ; } diff --git a/src/Kunstmaan/UserManagementBundle/Controller/UsersController.php b/src/Kunstmaan/UserManagementBundle/Controller/UsersController.php index 0f92290a61..5459034547 100644 --- a/src/Kunstmaan/UserManagementBundle/Controller/UsersController.php +++ b/src/Kunstmaan/UserManagementBundle/Controller/UsersController.php @@ -129,13 +129,13 @@ public function addAction(Request $request) $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $user->setPasswordChanged(true); - $user->setCreatedBy($this->getUser()->getUsername()); + $user->setCreatedBy(method_exists($this->getUser(), 'getUserIdentifier') ? $this->getUser()->getUserIdentifier() : $this->getUser()->getUsername()); $this->userManager->updateUser($user, true); $this->addFlash( FlashTypes::SUCCESS, $this->translator->trans('kuma_user.users.add.flash.success.%username%', [ - '%username%' => $user->getUsername(), + '%username%' => method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(), ]) ); @@ -208,7 +208,7 @@ public function editAction(Request $request, $id) $this->addFlash( FlashTypes::SUCCESS, $this->translator->trans('kuma_user.users.edit.flash.success.%username%', [ - '%username%' => $user->getUsername(), + '%username%' => method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(), ]) ); @@ -245,7 +245,10 @@ public function deleteFormAction(Request $request, $id) /* @var UserInterface $user */ $user = $em->getRepository($this->getParameter('kunstmaan_admin.user_class'))->find($id); if (!\is_null($user)) { - $afterDeleteEvent = new AfterUserDeleteEvent($user->getUsername(), $this->getUser()->getUsername()); + $deletedUser = method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(); + $deletedBy = method_exists($this->getUser(), 'getUserIdentifier') ? $this->getUser()->getUserIdentifier() : $this->getUser()->getUsername(); + + $afterDeleteEvent = new AfterUserDeleteEvent($deletedUser, $deletedBy); $em->remove($user); $em->flush(); @@ -255,7 +258,7 @@ public function deleteFormAction(Request $request, $id) $this->addFlash( FlashTypes::SUCCESS, $this->translator->trans('kuma_user.users.delete.flash.success.%username%', [ - '%username%' => $user->getUsername(), + '%username%' => method_exists($user, 'getUserIdentifier') ? $user->getUserIdentifier() : $user->getUsername(), ]) ); } diff --git a/src/Kunstmaan/UserManagementBundle/Resources/views/AdminList/ItemAction/delete.html.twig b/src/Kunstmaan/UserManagementBundle/Resources/views/AdminList/ItemAction/delete.html.twig index ae092a7c7b..9add333ac8 100644 --- a/src/Kunstmaan/UserManagementBundle/Resources/views/AdminList/ItemAction/delete.html.twig +++ b/src/Kunstmaan/UserManagementBundle/Resources/views/AdminList/ItemAction/delete.html.twig @@ -15,7 +15,7 @@ -

{{ 'settings.user.delete' | trans }}: {{ item.username }}

+

{{ 'settings.user.delete' | trans }}: {{ attribute(item, 'userIdentifier') is defined ? item.userIdentifier : item.username }}