diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 014dd0b57..dba0fad72 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -235,11 +235,6 @@ parameters: count: 1 path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - message: "#^Call to sprintf contains 0 placeholders, 1 value given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Access to an undefined property Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\JsonCustomFieldToArrayTransformer\\:\\:\\$customField\\.$#" count: 3 @@ -385,11 +380,6 @@ parameters: count: 2 path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - message: "#^Call to sprintf contains 2 placeholders, 0 values given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Construct empty\\(\\) is not allowed\\. Use more strict comparison\\.$#" count: 1 @@ -405,11 +395,6 @@ parameters: count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - message: "#^Method Symfony\\\\Bundle\\\\FrameworkBundle\\\\Controller\\\\AbstractController\\:\\:createNotFoundException\\(\\) invoked with 3 parameters, 0\\-2 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Parameter \\$scope of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:getReachableCenters\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\Scope\\.$#" count: 1 @@ -795,11 +780,6 @@ parameters: count: 1 path: src/Bundle/ChillMainBundle/Security/PasswordRecover/TokenManager.php - - - message: "#^Call to sprintf contains 0 placeholders, 1 value given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/UserProvider/UserProvider.php - - message: "#^Variable \\$message on left side of \\?\\? always exists and is not nullable\\.$#" count: 1 diff --git a/src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php b/src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php index f637281ba..31708b582 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php +++ b/src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php @@ -33,12 +33,12 @@ class CustomFieldsGroupToIdTransformer implements DataTransformerInterface if (null === $customFieldsGroup) { return ""; } - + if (!$customFieldsGroup instanceof CustomFieldsGroup) { throw new TransformationFailedException(sprintf('Transformation failed: ' . 'the expected type of the transforme function is an ' . 'object of type Chill\CustomFieldsBundle\Entity\CustomFieldsGroup, ' - . '%s given (value : %s)', gettype($customFieldsGroup), + . '%s given (value : %s)', gettype($customFieldsGroup), $customFieldsGroup)); } @@ -57,26 +57,31 @@ class CustomFieldsGroupToIdTransformer implements DataTransformerInterface if (!$id) { return null; } - + if ($id instanceof CustomFieldsGroup) { - throw new TransformationFailedException(sprintf( + throw new TransformationFailedException( + sprintf( 'The transformation failed: the expected argument on ' . 'reverseTransform is an object of type int,' . 'Chill\CustomFieldsBundle\Entity\CustomFieldsGroup, ' - . 'given', gettype($id))); + . 'given' + ) + ); } $customFieldsGroup = $this->om - ->getRepository('ChillCustomFieldsBundle:customFieldsGroup')->find($id) + ->getRepository(CustomFieldsGroup::class)->find($id) ; if (null === $customFieldsGroup) { - throw new TransformationFailedException(sprintf( - 'Le group avec le numéro "%s" ne peut pas être trouvé!', - $id - )); + throw new TransformationFailedException( + sprintf( + 'Le group avec le numéro "%s" ne peut pas être trouvé!', + $id + ) + ); } return $customFieldsGroup; } -} \ No newline at end of file +} diff --git a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php index d3112fd97..3f4fb8414 100644 --- a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php +++ b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php @@ -1,22 +1,4 @@ - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ namespace Chill\MainBundle\CRUD\Controller; @@ -37,58 +19,38 @@ use Chill\MainBundle\Pagination\PaginatorInterface; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; use Symfony\Component\Serializer\SerializerInterface; -/** - * Class CRUDController - * - * @package Chill\MainBundle\CRUD\Controller - */ class CRUDController extends AbstractController { - /** * The crud configuration * * This configuration si defined by `chill_main['crud']`. - * - * @var array */ - protected $crudConfig; + protected array $crudConfig; - /** - * @param array $config - */ - public function setCrudConfig(array $config) + public function setCrudConfig(array $config): void { $this->crudConfig = $config; } - /** - * @param $parameter - * @return Response - */ - public function CRUD($parameter) + public function CRUD(?string $parameter): Response { return new Response($parameter); } /** - * @param Request $request * @param $id - * @return \Symfony\Component\HttpFoundation\RedirectResponse|Response */ - public function delete(Request $request, $id) + public function delete(Request $request, $id): Response { return $this->deleteAction('delete', $request, $id); } /** - * @param string $action - * @param Request $request * @param $id * @param null $formClass - * @return null|\Symfony\Component\HttpFoundation\RedirectResponse|Response|void */ - protected function deleteAction(string $action, Request $request, $id, $formClass = null) + protected function deleteAction(string $action, Request $request, $id, $formClass = null): Response { $this->onPreDelete($action, $request, $id); @@ -101,8 +63,13 @@ class CRUDController extends AbstractController } if (NULL === $entity) { - throw $this->createNotFoundException(sprintf("The %s with id %s " - . "is not found"), $this->getCrudName(), $id); + throw $this->createNotFoundException( + sprintf( + 'The %s with id %s is not found', + $this->getCrudName(), + $id + ) + ); } $response = $this->checkACL($action, $entity); @@ -141,7 +108,9 @@ class CRUDController extends AbstractController return $this->redirectToRoute('chill_crud_'.$this->getCrudName().'_view', ['id' => $entity->getId()]); - } elseif ($form->isSubmitted()) { + } + + if ($form->isSubmitted()) { $this->addFlash('error', $this->generateFormErrorMessage($action, $form)); } @@ -505,8 +474,13 @@ class CRUDController extends AbstractController } if (NULL === $entity) { - throw $this->createNotFoundException(sprintf("The %s with id %s " - . "is not found", $this->getCrudName(), $id)); + throw $this->createNotFoundException( + sprintf( + 'The %s with id %s is not found', + $this->getCrudName(), + $id + ) + ); } $response = $this->checkACL($action, $entity); @@ -598,8 +572,13 @@ class CRUDController extends AbstractController $entity = $this->getEntity($action, $id, $request); if (NULL === $entity) { - throw $this->createNotFoundException(sprintf("The %s with id %s " - . "is not found", $this->getCrudName(), $id)); + throw $this->createNotFoundException( + sprintf( + 'The %s with id %s is not found', + $this->getCrudName(), + $id + ) + ); } $response = $this->checkACL($action, $entity); diff --git a/src/Bundle/ChillMainBundle/Security/UserProvider/UserProvider.php b/src/Bundle/ChillMainBundle/Security/UserProvider/UserProvider.php index b741fd2c2..b2e09775b 100644 --- a/src/Bundle/ChillMainBundle/Security/UserProvider/UserProvider.php +++ b/src/Bundle/ChillMainBundle/Security/UserProvider/UserProvider.php @@ -1,22 +1,10 @@ - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ + +declare(strict_types=1); + namespace Chill\MainBundle\Security\UserProvider; +use Doctrine\ORM\NoResultException; use Symfony\Component\Security\Core\User\UserProviderInterface; use Symfony\Component\Security\Core\User\UserInterface; use Doctrine\ORM\EntityManagerInterface; @@ -24,25 +12,15 @@ use Chill\MainBundle\Entity\User; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Symfony\Component\Security\Core\Exception\UnsupportedUserException; -/** - * - * - * @author Julien Fastré - */ class UserProvider implements UserProviderInterface { - /** - * - * @var EntityManagerInterface - */ - protected $em; - + protected EntityManagerInterface $em; + public function __construct(EntityManagerInterface $em) { $this->em = $em; } - public function loadUserByUsername($username): UserInterface { try { @@ -50,14 +28,18 @@ class UserProvider implements UserProviderInterface "SELECT u FROM %s u " . "WHERE u.usernameCanonical = UNACCENT(LOWER(:pattern)) " . "OR " - . "u.emailCanonical = UNACCENT(LOWER(:pattern))", + . "u.emailCanonical = UNACCENT(LOWER(:pattern))", User::class)) ->setParameter('pattern', $username) ->getSingleResult(); - } catch (\Doctrine\ORM\NoResultException $e) { - throw new UsernameNotFoundException(sprintf('Bad credentials.', $username)); + } catch (NoResultException $e) { + throw new UsernameNotFoundException( + sprintf('Bad credentials.'), + 0, + $e + ); } - + return $user; } @@ -66,13 +48,13 @@ class UserProvider implements UserProviderInterface if (!$user instanceof User) { throw new UnsupportedUserException("Unsupported user class: cannot reload this user"); } - + $reloadedUser = $this->em->getRepository(User::class)->find($user->getId()); - + if (NULL === $reloadedUser) { throw new UsernameNotFoundException(sprintf('User with ID "%s" could not be reloaded.', $user->getId())); } - + return $reloadedUser; }