From f19c66a0f3f914aa7a34cd8c96ed6dfcbe17c846 Mon Sep 17 00:00:00 2001 From: Dawid Parafinski Date: Mon, 4 Aug 2025 07:34:11 +0200 Subject: [PATCH 1/3] IBX-10414: Dropped update and edit button from settings page --- src/bundle/Controller/UserSettingsController.php | 8 -------- src/lib/Form/Type/UserSettingUpdateType.php | 7 ++----- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/src/bundle/Controller/UserSettingsController.php b/src/bundle/Controller/UserSettingsController.php index 6483543..e6c5f90 100644 --- a/src/bundle/Controller/UserSettingsController.php +++ b/src/bundle/Controller/UserSettingsController.php @@ -83,14 +83,6 @@ public function updateAction(Request $request, UpdateView $view): Response|Updat 'ibexa_user_settings' ); - if ($form->getClickedButton() instanceof Button - && $form->getClickedButton()->getName() === UserSettingUpdateType::BTN_UPDATE_AND_EDIT - ) { - return $this->redirectToRoute('ibexa.user_settings.update', [ - 'identifier' => $data->getIdentifier(), - ]); - } - return new RedirectResponse($this->generateUrl('ibexa.user_settings.list')); }); diff --git a/src/lib/Form/Type/UserSettingUpdateType.php b/src/lib/Form/Type/UserSettingUpdateType.php index 8af5fa4..63919c6 100644 --- a/src/lib/Form/Type/UserSettingUpdateType.php +++ b/src/lib/Form/Type/UserSettingUpdateType.php @@ -20,8 +20,6 @@ class UserSettingUpdateType extends AbstractType { - public const string BTN_UPDATE_AND_EDIT = 'update_and_edit'; - public function __construct( protected FormMapperRegistry $formMapperRegistry, protected ValueDefinitionRegistry $valueDefinitionRegistry @@ -38,7 +36,7 @@ public function buildForm(FormBuilderInterface $builder, array $options): void ); $builder - ->add('identifier', HiddenType::class, []); + ->add('identifier', HiddenType::class); foreach ($groupDefinition->getValueDefinitions() as $identifier => $valueDefinition) { $formMapper = $this->formMapperRegistry->getFormMapper($identifier); @@ -55,8 +53,7 @@ public function buildForm(FormBuilderInterface $builder, array $options): void $builder->add($sub); } - $builder->add('update', SubmitType::class, []); - $builder->add(self::BTN_UPDATE_AND_EDIT, SubmitType::class); + $builder->add('update', SubmitType::class); } public function configureOptions(OptionsResolver $resolver): void From 2daf9393afc0f495ac8f4f4859ee67e6d8145c03 Mon Sep 17 00:00:00 2001 From: Dawid Parafinski Date: Mon, 4 Aug 2025 08:15:24 +0200 Subject: [PATCH 2/3] removed unused $form --- src/bundle/Controller/UserSettingsController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bundle/Controller/UserSettingsController.php b/src/bundle/Controller/UserSettingsController.php index e6c5f90..2648fd1 100644 --- a/src/bundle/Controller/UserSettingsController.php +++ b/src/bundle/Controller/UserSettingsController.php @@ -71,7 +71,7 @@ public function updateAction(Request $request, UpdateView $view): Response|Updat $form->handleRequest($request); if ($form->isSubmitted()) { - $result = $this->submitHandler->handle($form, function (UserSettingUpdateData $data) use ($form): RedirectResponse { + $result = $this->submitHandler->handle($form, function (UserSettingUpdateData $data): RedirectResponse { foreach ($data->getValues() as $identifier => $value) { $this->userSettingService->setUserSetting($identifier, (string)$value['value']); } From 891cb1133bf310471ec2d4bd2fd699939287b4d8 Mon Sep 17 00:00:00 2001 From: Dawid Parafinski Date: Mon, 4 Aug 2025 08:23:58 +0200 Subject: [PATCH 3/3] fixed cs --- phpstan-baseline.neon | 6 ------ src/bundle/Controller/UserSettingsController.php | 2 -- 2 files changed, 8 deletions(-) diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index e265e54..d8b3991 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -30,12 +30,6 @@ parameters: count: 4 path: src/bundle/Controller/UserRegisterController.php - - - message: '#^Call to an undefined method Symfony\\Component\\Form\\FormInterface\:\:getClickedButton\(\)\.$#' - identifier: method.notFound - count: 2 - path: src/bundle/Controller/UserSettingsController.php - - message: '#^Cannot call method getAPIUser\(\) on Symfony\\Component\\Security\\Core\\User\\UserInterface\|null\.$#' identifier: method.nonObject diff --git a/src/bundle/Controller/UserSettingsController.php b/src/bundle/Controller/UserSettingsController.php index 2648fd1..50dd9cf 100644 --- a/src/bundle/Controller/UserSettingsController.php +++ b/src/bundle/Controller/UserSettingsController.php @@ -15,13 +15,11 @@ use Ibexa\User\Form\Data\UserSettingUpdateData; use Ibexa\User\Form\Factory\FormFactory; use Ibexa\User\Form\SubmitHandler; -use Ibexa\User\Form\Type\UserSettingUpdateType; use Ibexa\User\UserSetting\UserSettingService; use Ibexa\User\UserSetting\ValueDefinitionRegistry; use Ibexa\User\View\UserSettings\ListView; use Ibexa\User\View\UserSettings\UpdateView; use JMS\TranslationBundle\Annotation\Desc; -use Symfony\Component\Form\Button; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response;