Php cs fixes

This commit is contained in:
Julie Lenaerts 2024-07-04 11:39:02 +02:00
parent 428494ca1f
commit 21b79c1981
26 changed files with 133 additions and 80 deletions

View File

@ -17,8 +17,6 @@ use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\PersonBundle\Entity\AccompanyingPeriod;
use Chill\PersonBundle\Entity\Person;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Doctrine\ORM\NonUniqueResultException;
use Doctrine\ORM\NoResultException;
use Doctrine\Persistence\ManagerRegistry;
/**

View File

@ -1,11 +1,18 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\ActivityBundle\Security\Authorization;
use Chill\ActivityBundle\Entity\Activity;
use Chill\ActivityBundle\Repository\ActivityDocumentACLAwareRepository;
use Chill\ActivityBundle\Repository\ActivityRepository;
use Chill\ActivityBundle\Security\Authorization\ActivityVoter;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters\AbstractStoredObjectVoter;
@ -18,7 +25,7 @@ class ActivityStoredObjectVoter extends AbstractStoredObjectVoter
private readonly ActivityRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -27,9 +34,6 @@ class ActivityStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return Activity::class;

View File

@ -80,5 +80,4 @@ class AccompanyingCourseDocumentRepository implements ObjectRepository, Associat
{
return AccompanyingCourseDocument::class;
}
}

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Repository;
use Chill\DocStoreBundle\Entity\StoredObject;

View File

@ -12,7 +12,6 @@ declare(strict_types=1);
namespace Chill\DocStoreBundle\Security\Authorization;
use Chill\DocStoreBundle\AsyncUpload\SignedUrl;
use Chill\DocStoreBundle\Entity\StoredObject;
use Chill\DocStoreBundle\Repository\StoredObjectRepository;
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
use Symfony\Component\Security\Core\Authorization\Voter\Voter;
@ -41,7 +40,7 @@ final class AsyncUploadVoter extends Voter
$storedObject = $this->storedObjectRepository->findOneBy(['filename' => $subject->object_name]);
return match($subject->method) {
return match ($subject->method) {
'GET' => $this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject),
'PUT' => $this->security->isGranted(StoredObjectRoleEnum::EDIT->value, $storedObject),
default => $this->security->isGranted('ROLE_USER') || $this->security->isGranted('ROLE_ADMIN')

View File

@ -24,9 +24,7 @@ use Symfony\Component\Security\Core\Security;
*/
class StoredObjectVoter extends Voter
{
public function __construct(private readonly Security $security, private readonly iterable $storedObjectVoters) {
}
public function __construct(private readonly Security $security, private readonly iterable $storedObjectVoters) {}
protected function supports($attribute, $subject): bool
{

View File

@ -12,13 +12,11 @@ declare(strict_types=1);
namespace Chill\DocStoreBundle\Security\Authorization;
use Chill\DocStoreBundle\Entity\StoredObject;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
interface StoredObjectVoterInterface {
interface StoredObjectVoterInterface
{
public function supports(StoredObjectRoleEnum $attribute, StoredObject $subject): bool;
public function voteOnAttribute(StoredObjectRoleEnum $attribute, StoredObject $subject, TokenInterface $token): bool;
}

View File

@ -1,14 +1,21 @@
<?php
namespace Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters;
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Entity\StoredObject;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoterInterface;
use Chill\DocStoreBundle\Service\WorkflowDocumentService;
use Chill\MainBundle\Entity\User;
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
use Symfony\Component\Security\Core\Security;
@ -25,16 +32,15 @@ abstract class AbstractStoredObjectVoter implements StoredObjectVoterInterface
abstract protected function canBeAssociatedWithWorkflow(): bool;
function __construct(
public function __construct(
private readonly Security $security,
private readonly ?WorkflowDocumentService $workflowDocumentService = null,
)
{
}
) {}
public function supports(StoredObjectRoleEnum $attribute, StoredObject $subject): bool
{
$class = $this->getClass();
return $this->getRepository()->findAssociatedEntityToStoredObject($subject) instanceof $class;
}
@ -52,7 +58,7 @@ abstract class AbstractStoredObjectVoter implements StoredObjectVoterInterface
if ($this->canBeAssociatedWithWorkflow()) {
if (null === $this->workflowDocumentService) {
throw new \LogicException("Provide a workflow document service");
throw new \LogicException('Provide a workflow document service');
}
return $this->workflowDocumentService->notBlockedByWorkflow($entity);

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Entity\AccompanyingCourseDocument;
@ -7,7 +16,6 @@ use Chill\DocStoreBundle\Repository\AccompanyingCourseDocumentRepository;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\DocStoreBundle\Security\Authorization\AccompanyingCourseDocumentVoter;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters\AbstractStoredObjectVoter;
use Chill\DocStoreBundle\Service\WorkflowDocumentService;
use Symfony\Component\Security\Core\Security;
@ -17,7 +25,7 @@ final class AccompanyingCourseDocumentStoredObjectVoter extends AbstractStoredOb
private readonly AccompanyingCourseDocumentRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace ChillDocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Entity\AccompanyingCourseDocument;
@ -17,7 +26,7 @@ final class AccompanyingCourseStoredObjectVoter extends AbstractStoredObjectVote
private readonly AccompanyingCourseDocumentRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
@ -8,7 +17,6 @@ use Chill\DocStoreBundle\Service\WorkflowDocumentService;
use Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWork;
use Chill\PersonBundle\Repository\AccompanyingPeriod\AccompanyingPeriodWorkRepository;
use Chill\PersonBundle\Security\Authorization\AccompanyingPeriodWorkVoter;
use Symfony\Component\Security\Core\Security;
class AccompanyingPeriodWorkEvaluationStoredObjectVoter extends AbstractStoredObjectVoter
@ -17,7 +25,7 @@ class AccompanyingPeriodWorkEvaluationStoredObjectVoter extends AbstractStoredOb
private readonly AccompanyingPeriodWorkRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -26,9 +34,6 @@ class AccompanyingPeriodWorkEvaluationStoredObjectVoter extends AbstractStoredOb
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return AccompanyingPeriodWork::class;

View File

@ -1,9 +1,17 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace src\Bundle\ChillDocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\ActivityBundle\Entity\Activity;
use Chill\ActivityBundle\Repository\ActivityDocumentACLAwareRepository;
use Chill\ActivityBundle\Repository\ActivityRepository;
use Chill\ActivityBundle\Security\Authorization\ActivityVoter;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
@ -18,7 +26,7 @@ class ActivityStoredObjectVoter extends AbstractStoredObjectVoter
private readonly ActivityRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -27,9 +35,6 @@ class ActivityStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return Activity::class;

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace src\Bundle\ChillDocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
@ -17,7 +26,7 @@ class EventStoredObjectVoter extends AbstractStoredObjectVoter
private readonly EventRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -26,9 +35,6 @@ class EventStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return Event::class;

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Entity\PersonDocument;
@ -7,7 +16,6 @@ use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\DocStoreBundle\Repository\PersonDocumentRepository;
use Chill\DocStoreBundle\Security\Authorization\PersonDocumentVoter;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters\AbstractStoredObjectVoter;
use Chill\DocStoreBundle\Service\WorkflowDocumentService;
use Symfony\Component\Security\Core\Security;
@ -17,7 +25,7 @@ class PersonDocumentStoredObjectVoter extends AbstractStoredObjectVoter
private readonly PersonDocumentRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -26,9 +34,6 @@ class PersonDocumentStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return PersonDocument::class;

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace src\Bundle\ChillDocStoreBundle\Security\Authorization\StoredObjectVoters;
use Chill\DocStoreBundle\Entity\PersonDocument;
@ -17,7 +26,7 @@ class PersonStoredObjectVoter extends AbstractStoredObjectVoter
private readonly PersonDocumentRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -26,9 +35,6 @@ class PersonStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return PersonDocument::class;

View File

@ -1,18 +1,23 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\DocStoreBundle\Service;
use Chill\MainBundle\Entity\Workflow\EntityWorkflow;
use Chill\MainBundle\Repository\Workflow\EntityWorkflowRepository;
use Chill\MainBundle\Workflow\EntityWorkflowManager;
use Symfony\Component\Security\Core\Security;
class WorkflowDocumentService
{
public function __construct(private readonly Security $security, private readonly EntityWorkflowManager $entityWorkflowManager)
{
}
public function __construct(private readonly Security $security, private readonly EntityWorkflowManager $entityWorkflowManager) {}
public function notBlockedByWorkflow(object $entity): bool
{
@ -22,7 +27,6 @@ class WorkflowDocumentService
$workflow = $this->entityWorkflowManager->findByRelatedEntity($entity);
$currentUser = $this->security->getUser();
if (null != $workflow) {
if ($workflow->isFinal()) {
return false;
@ -35,5 +39,4 @@ class WorkflowDocumentService
return true;
}
}

View File

@ -18,19 +18,15 @@ use Chill\MainBundle\Entity\Workflow\EntityWorkflow;
use Chill\MainBundle\Repository\Workflow\EntityWorkflowRepository;
use Chill\MainBundle\Workflow\EntityWorkflowHandlerInterface;
use Chill\PersonBundle\Entity\AccompanyingPeriodParticipation;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\EntityRepository;
use Symfony\Contracts\Translation\TranslatorInterface;
readonly class AccompanyingCourseDocumentWorkflowHandler implements EntityWorkflowHandlerInterface
{
public function __construct(
private TranslatorInterface $translator,
private EntityWorkflowRepository $workflowRepository,
private TranslatorInterface $translator,
private EntityWorkflowRepository $workflowRepository,
private AccompanyingCourseDocumentRepository $repository
) {
}
) {}
public function getDeletionRoles(): array
{
@ -127,7 +123,7 @@ readonly class AccompanyingCourseDocumentWorkflowHandler implements EntityWorkfl
public function findByRelatedEntity(object $object): ?EntityWorkflow
{
if(!$object instanceof AccompanyingCourseDocument) {
if (!$object instanceof AccompanyingCourseDocument) {
return null;
}

View File

@ -13,7 +13,6 @@ namespace Chill\EventBundle\Form\ChoiceLoader;
use Chill\EventBundle\Entity\Event;
use Chill\EventBundle\Repository\EventRepository;
use Doctrine\ORM\EntityRepository;
use Symfony\Component\Form\ChoiceList\ChoiceListInterface;
use Symfony\Component\Form\ChoiceList\Loader\ChoiceLoaderInterface;

View File

@ -16,8 +16,6 @@ use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
use Chill\EventBundle\Entity\Event;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\NonUniqueResultException;
use Doctrine\ORM\NoResultException;
use Doctrine\ORM\QueryBuilder;
use Doctrine\Persistence\ObjectRepository;

View File

@ -1,5 +1,14 @@
<?php
declare(strict_types=1);
/*
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Chill\EventBundle\Security\Authorization;
use Chill\DocStoreBundle\Repository\AssociatedEntityToStoredObjectInterface;
@ -8,7 +17,6 @@ use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoters\AbstractStore
use Chill\DocStoreBundle\Service\WorkflowDocumentService;
use Chill\EventBundle\Entity\Event;
use Chill\EventBundle\Repository\EventRepository;
use Chill\EventBundle\Security\Authorization\EventVoter;
use Symfony\Component\Security\Core\Security;
class EventStoredObjectVoter extends AbstractStoredObjectVoter
@ -17,7 +25,7 @@ class EventStoredObjectVoter extends AbstractStoredObjectVoter
private readonly EventRepository $repository,
Security $security,
WorkflowDocumentService $workflowDocumentService
){
) {
parent::__construct($security, $workflowDocumentService);
}
@ -26,9 +34,6 @@ class EventStoredObjectVoter extends AbstractStoredObjectVoter
return $this->repository;
}
/**
* @inheritDoc
*/
protected function getClass(): string
{
return Event::class;

View File

@ -112,7 +112,6 @@ class EntityWorkflowRepository implements ObjectRepository
->setParameter('entity_id', $relatedEntityId);
return $query->getQuery()->getResult();
}
/**

View File

@ -43,7 +43,7 @@ class EntityWorkflowManager
foreach ($this->handlers as $handler) {
return $handler->findByRelatedEntity($object);
}
return null;
}
}

View File

@ -11,7 +11,6 @@ declare(strict_types=1);
namespace Chill\PersonBundle\Security\Authorization;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectVoterInterface;
use Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWorkEvaluationDocument;
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface;

View File

@ -140,6 +140,7 @@ class AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler implements EntityW
if (!$object instanceof AccompanyingPeriodWorkEvaluationDocument) {
return null;
}
return $this->workflowRepository->findByRelatedEntity(AccompanyingPeriodWorkEvaluationDocument::class, $object->getId());
}
}

View File

@ -133,6 +133,7 @@ class AccompanyingPeriodWorkWorkflowHandler implements EntityWorkflowHandlerInte
if (!$object instanceof AccompanyingPeriodWork) {
return null;
}
return $this->workflowRepository->findByRelatedEntity(AccompanyingPeriodWork::class, $object->getId());
}
}

View File

@ -12,7 +12,6 @@ declare(strict_types=1);
namespace Chill\WopiBundle\Service\Wopi;
use ChampsLibres\WopiLib\Contract\Entity\Document;
use Chill\DocStoreBundle\Repository\StoredObjectRepository;
use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum;
use Chill\MainBundle\Entity\User;
@ -70,7 +69,6 @@ class AuthorizationManager implements \ChampsLibres\WopiBundle\Contracts\Authori
{
$storedObject = $this->getRelatedStoredObject($document);
if ($this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) {
return $this->isTokenValid($accessToken, $document, $request);
}
@ -103,5 +101,4 @@ class AuthorizationManager implements \ChampsLibres\WopiBundle\Contracts\Authori
return false;
}
}