Compare commits

..

5 Commits

1813 changed files with 770 additions and 6959 deletions

View File

@@ -0,0 +1,5 @@
kind: Fixed
body: Fix delete action for accompanying periods in draft state
time: 2024-08-21T15:14:13.753383913+02:00
custom:
Issue: ""

View File

@@ -0,0 +1,5 @@
kind: Fixed
body: Fix connection to azure when making an calendar event in chill
time: 2024-08-21T16:55:37.977150909+02:00
custom:
Issue: ""

View File

@@ -8,7 +8,7 @@
"social worker"
],
"require": {
"php": "^8.3",
"php": "^8.2",
"ext-dom": "*",
"ext-json": "*",
"ext-openssl": "*",
@@ -30,48 +30,49 @@
"ovh/ovh": "^3.0",
"phpoffice/phpspreadsheet": "^1.16",
"ramsey/uuid-doctrine": "^1.7",
"sensio/framework-extra-bundle": "^6.0",
"sensio/framework-extra-bundle": "^5.5",
"spomky-labs/base64url": "^2.0",
"symfony/asset": "6.4.*",
"symfony/browser-kit": "6.4.*",
"symfony/cache": "6.4.*",
"symfony/asset": "^5.4",
"symfony/browser-kit": "^5.4",
"symfony/cache": "^5.4",
"symfony/clock": "^6.2",
"symfony/config": "^6.4",
"symfony/console": "6.4.*",
"symfony/css-selector": "6.4.*",
"symfony/dom-crawler": "6.4.*",
"symfony/error-handler": "6.4.*",
"symfony/event-dispatcher": "6.4.*",
"symfony/expression-language": "6.4.*",
"symfony/filesystem": "6.4.*",
"symfony/finder": "6.4.*",
"symfony/form": "6.4.*",
"symfony/framework-bundle": "6.4.*",
"symfony/http-client": "6.4.*",
"symfony/http-foundation": "6.4.*",
"symfony/intl": "6.4.*",
"symfony/mailer": "6.4.*",
"symfony/messenger": "6.4.*",
"symfony/mime": "6.4.*",
"symfony/config": "^5.4",
"symfony/console": "^5.4",
"symfony/css-selector": "^5.4",
"symfony/dom-crawler": "^5.4",
"symfony/error-handler": "^5.4",
"symfony/event-dispatcher": "^5.4",
"symfony/expression-language": "^5.4",
"symfony/filesystem": "^5.4",
"symfony/finder": "^5.4",
"symfony/form": "^5.4",
"symfony/framework-bundle": "^5.4",
"symfony/http-client": "^5.4",
"symfony/http-foundation": "^5.4",
"symfony/intl": "^5.4",
"symfony/mailer": "^5.4",
"symfony/messenger": "^5.4",
"symfony/mime": "^5.4",
"symfony/monolog-bundle": "^3.5",
"symfony/options-resolver": "6.4.*",
"symfony/process": "6.4.*",
"symfony/property-access": "6.4.*",
"symfony/property-info": "6.4.*",
"symfony/routing": "6.4.*",
"symfony/security-bundle": "^6.4",
"symfony/security-core": "6.4.*",
"symfony/security-csrf": "6.4.*",
"symfony/security-http": "6.4.*",
"symfony/serializer": "6.4.*",
"symfony/string": "6.4.*",
"symfony/templating": "6.4.*",
"symfony/translation": "6.4.*",
"symfony/twig-bundle": "6.4.*",
"symfony/validator": "6.4.*",
"symfony/options-resolver": "^5.4",
"symfony/process": "^5.4",
"symfony/property-access": "^5.4",
"symfony/property-info": "^5.4",
"symfony/routing": "^5.4",
"symfony/security-bundle": "^5.4",
"symfony/security-core": "^5.4",
"symfony/security-csrf": "^5.4",
"symfony/security-guard": "^5.4",
"symfony/security-http": "^5.4",
"symfony/serializer": "^5.4",
"symfony/string": "^5.4",
"symfony/templating": "^5.4",
"symfony/translation": "^5.4",
"symfony/twig-bundle": "^5.4",
"symfony/validator": "^5.4",
"symfony/webpack-encore-bundle": "^1.11",
"symfony/workflow": "6.4.*",
"symfony/yaml": "6.4.*",
"symfony/workflow": "^5.4",
"symfony/yaml": "^5.4",
"thenetworg/oauth2-azure": "^2.0",
"twig/extra-bundle": "^3.0",
"twig/intl-extra": "^3.0",
@@ -92,13 +93,13 @@
"phpstan/phpstan-strict-rules": "^1.0",
"phpunit/phpunit": "^10.5.24",
"rector/rector": "^1.1.0",
"symfony/debug-bundle": "6.4.*",
"symfony/dotenv": "6.4.*",
"symfony/debug-bundle": "^5.4",
"symfony/dotenv": "^5.4",
"symfony/maker-bundle": "^1.20",
"symfony/phpunit-bridge": "^7.1",
"symfony/runtime": "6.4.*",
"symfony/stopwatch": "6.4.*",
"symfony/var-dumper": "6.4.*"
"symfony/runtime": "^5.4",
"symfony/stopwatch": "^5.4",
"symfony/var-dumper": "^5.4"
},
"conflict": {
"symfony/symfony": "*"
@@ -151,11 +152,5 @@
"cache:clear": "symfony-cmd"
},
"php-cs-fixer": "php-cs-fixer fix --config=./.php-cs-fixer.dist.php --show-progress=none"
},
"extra": {
"symfony": {
"allow-contrib": false,
"require": "6.4.*"
}
}
}

View File

@@ -21,7 +21,6 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface;
class BirthdateFilter implements ExportElementValidatedInterface, FilterInterface
{
// add specific role for this filter
#[\Override]
public function addRole(): ?string
{
// we do not need any new role for this filter, so we return null
@@ -29,7 +28,6 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
}
// here, we alter the query created by Export
#[\Override]
public function alterQuery(\Doctrine\ORM\QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -54,14 +52,12 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
}
// we give information on which type of export this filter applies
#[\Override]
public function applyOn()
{
return 'person';
}
// we build a form to collect some parameters from the users
#[\Override]
public function buildForm(\Symfony\Component\Form\FormBuilderInterface $builder)
{
$builder->add('date_from', DateType::class, [
@@ -78,7 +74,6 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
'format' => 'dd-MM-yyyy',
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return ['date_from' => new DateTime(), 'date_to' => new DateTime()];
@@ -86,7 +81,6 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
// here, we create a simple string which will describe the action of
// the filter in the Response
#[\Override]
public function describeAction($data, $format = 'string')
{
return ['Filtered by person\'s birtdate: '
@@ -96,7 +90,6 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
], ];
}
#[\Override]
public function getTitle()
{
return 'Filter by person\'s birthdate';
@@ -106,7 +99,6 @@ class BirthdateFilter implements ExportElementValidatedInterface, FilterInterfac
// is executed here. This function is added by the interface
// `ExportElementValidatedInterface`, and can be ignore if there is
// no need for a validation
#[\Override]
public function validateForm($data, ExecutionContextInterface $context)
{
$date_from = $data['date_from'];

View File

@@ -32,30 +32,25 @@ class CountPerson implements ExportInterface
$this->entityManager = $em;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// this export does not add any form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription()
{
return 'Count peoples by various parameters.';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
// the Closure which will be executed by the formatter.
@@ -65,7 +60,6 @@ class CountPerson implements ExportInterface
};
}
#[\Override]
public function getQueryKeys($data)
{
// this array match the result keys in the query. We have only
@@ -73,25 +67,21 @@ class CountPerson implements ExportInterface
return ['export_result'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle()
{
return 'Count peoples';
}
#[\Override]
public function getType()
{
return Declarations::PERSON_TYPE;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
// we gather all center the user choose.
@@ -108,13 +98,11 @@ class CountPerson implements ExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return PersonVoter::STATS;
}
#[\Override]
public function supportsModifiers()
{
// explain the export manager which formatters and filters are allowed

View File

@@ -31,7 +31,6 @@ class ChillMainConfiguration implements ConfigurationInterface
$this->setWidgetFactories($widgetFactories);
}
#[\Override]
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder('chill_main');

View File

@@ -27,13 +27,11 @@ class ChillMainExtension extends Extension implements Widget\HasWidgetFactoriesE
*/
protected $widgetFactories = [];
#[\Override]
public function addWidgetFactory(WidgetFactoryInterface $factory)
{
$this->widgetFactories[] = $factory;
}
#[\Override]
public function getConfiguration(array $config, ContainerBuilder $container)
{
return new Configuration($this->widgetFactories, $container);
@@ -42,13 +40,11 @@ class ChillMainExtension extends Extension implements Widget\HasWidgetFactoriesE
/**
* @return WidgetFactoryInterface[]
*/
#[\Override]
public function getWidgetFactories()
{
return $this->widgetFactories;
}
#[\Override]
public function load(array $configs, ContainerBuilder $container)
{
// configuration for main bundle

View File

@@ -25,7 +25,6 @@ class ChillPersonAddAPersonListWidgetFactory extends AbstractWidgetFactory
* see http://symfony.com/doc/current/components/config/definition.html
*
*/
#[\Override]
public function configureOptions($place, NodeBuilder $node)
{
$node->booleanNode('only_active')
@@ -57,7 +56,6 @@ class ChillPersonAddAPersonListWidgetFactory extends AbstractWidgetFactory
* the service must exists in the container, and it is not required that the service
* has the `chill_main` tag.
*/
#[\Override]
public function getServiceId(ContainerBuilder $containerBuilder, $place, $order, array $config)
{
return 'chill_person.widget.person_list';
@@ -68,7 +66,6 @@ class ChillPersonAddAPersonListWidgetFactory extends AbstractWidgetFactory
*
* @return string
*/
#[\Override]
public function getWidgetAlias()
{
return 'person_list';

View File

@@ -79,7 +79,6 @@ class ChillPersonAddAPersonWidget implements WidgetInterface
*
* @return string
*/
#[\Override]
public function render(Twig_Environment $env, $place, array $context, array $config)
{
$qb = $this->personRepository

View File

@@ -22,7 +22,6 @@ use Symfony\Component\HttpKernel\DependencyInjection\Extension;
*/
class ChillPersonExtension extends Extension implements PrependExtensionInterface
{
#[\Override]
public function load(array $configs, ContainerBuilder $container)
{
// ...
@@ -33,7 +32,6 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
*
* @param \Chill\PersonBundle\DependencyInjection\containerBuilder $container
*/
#[\Override]
public function prepend(ContainerBuilder $container)
{
$container->prependExtensionConfig('chill_main', [

View File

@@ -39,19 +39,14 @@ return static function (RectorConfig $rectorConfig): void {
//define sets of rules
$rectorConfig->sets([
LevelSetList::UP_TO_PHP_83,
// \Rector\Symfony\Set\SymfonySetList::SYMFONY_40,
// \Rector\Symfony\Set\SymfonySetList::SYMFONY_41,
// \Rector\Symfony\Set\SymfonySetList::SYMFONY_42,
// \Rector\Symfony\Set\SymfonySetList::SYMFONY_43,
// \Rector\Symfony\Set\SymfonySetList::SYMFONY_44,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_50,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_51,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_52,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_53,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_54,
// \Rector\Doctrine\Set\DoctrineSetList::DOCTRINE_CODE_QUALITY,
// \Rector\PHPUnit\Set\PHPUnitSetList::PHPUNIT_90,
LevelSetList::UP_TO_PHP_82,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_40,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_41,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_42,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_43,
\Rector\Symfony\Set\SymfonySetList::SYMFONY_44,
\Rector\Doctrine\Set\DoctrineSetList::DOCTRINE_CODE_QUALITY,
\Rector\PHPUnit\Set\PHPUnitSetList::PHPUNIT_90,
]);
$rectorConfig->ruleWithConfiguration(\Rector\Php80\Rector\Class_\AnnotationToAttributeRector::class, [

View File

@@ -22,7 +22,6 @@ class AdminActivityPresenceController extends CRUDController
*
* @return \Doctrine\ORM\QueryBuilder|mixed
*/
#[\Override]
protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator)
{
/* @var \Doctrine\ORM\QueryBuilder $query */

View File

@@ -22,7 +22,6 @@ class AdminActivityTypeCategoryController extends CRUDController
*
* @return \Doctrine\ORM\QueryBuilder|mixed
*/
#[\Override]
protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator)
{
/* @var \Doctrine\ORM\QueryBuilder $query */

View File

@@ -22,7 +22,6 @@ class AdminActivityTypeController extends CRUDController
*
* @return \Doctrine\ORM\QueryBuilder|mixed
*/
#[\Override]
protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator)
{
/* @var \Doctrine\ORM\QueryBuilder $query */

View File

@@ -32,13 +32,11 @@ class LoadActivity extends AbstractFixture implements OrderedFixtureInterface
$this->faker = FakerFactory::create('fr_FR');
}
#[\Override]
public function getOrder()
{
return 16400;
}
#[\Override]
public function load(ObjectManager $manager)
{
$persons = $this->em

View File

@@ -38,7 +38,6 @@ class LoadActivityNotifications extends AbstractFixture implements DependentFixt
],
];
#[\Override]
public function getDependencies()
{
return [

View File

@@ -23,13 +23,11 @@ class LoadActivityReason extends AbstractFixture implements OrderedFixtureInterf
{
public static $references = [];
#[\Override]
public function getOrder()
{
return 16300;
}
#[\Override]
public function load(ObjectManager $manager)
{
$reasons = [

View File

@@ -21,13 +21,11 @@ use Doctrine\Persistence\ObjectManager;
*/
class LoadActivityReasonCategory extends AbstractFixture implements OrderedFixtureInterface
{
#[\Override]
public function getOrder()
{
return 16200;
}
#[\Override]
public function load(ObjectManager $manager)
{
$categs = [

View File

@@ -23,13 +23,11 @@ class LoadActivityType extends Fixture implements OrderedFixtureInterface
{
public static $references = [];
#[\Override]
public function getOrder()
{
return 16100;
}
#[\Override]
public function load(ObjectManager $manager)
{
$types = [

View File

@@ -23,13 +23,11 @@ class LoadActivityTypeCategory extends Fixture implements OrderedFixtureInterfac
{
public static $references = [];
#[\Override]
public function getOrder()
{
return 16050;
}
#[\Override]
public function load(ObjectManager $manager)
{
$categories = [

View File

@@ -26,13 +26,11 @@ use Doctrine\Persistence\ObjectManager;
*/
class LoadActivitytACL extends AbstractFixture implements OrderedFixtureInterface
{
#[\Override]
public function getOrder()
{
return 16000;
}
#[\Override]
public function load(ObjectManager $manager)
{
foreach (LoadPermissionsGroup::$refs as $permissionsGroupRef) {

View File

@@ -25,7 +25,6 @@ use Symfony\Component\HttpKernel\DependencyInjection\Extension;
*/
class ChillActivityExtension extends Extension implements PrependExtensionInterface
{
#[\Override]
public function load(array $configs, ContainerBuilder $container)
{
$configuration = new Configuration();
@@ -45,7 +44,6 @@ class ChillActivityExtension extends Extension implements PrependExtensionInterf
$loader->load('services/doctrine.entitylistener.yaml');
}
#[\Override]
public function prepend(ContainerBuilder $container)
{
$this->prependRoutes($container);

View File

@@ -22,7 +22,6 @@ use function is_int;
*/
class Configuration implements ConfigurationInterface
{
#[\Override]
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder('chill_activity');

View File

@@ -53,9 +53,9 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
use TrackUpdateTrait;
final public const string SENTRECEIVED_RECEIVED = 'received';
final public const SENTRECEIVED_RECEIVED = 'received';
final public const string SENTRECEIVED_SENT = 'sent';
final public const SENTRECEIVED_SENT = 'sent';
#[Groups(['read'])]
#[ORM\ManyToOne(targetEntity: AccompanyingPeriod::class)]
@@ -262,7 +262,6 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
return $this;
}
#[\Override]
public function getAccompanyingPeriod(): ?AccompanyingPeriod
{
return $this->accompanyingPeriod;
@@ -282,7 +281,6 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
* get the center
* center is extracted from person.
*/
#[\Override]
public function getCenters(): iterable
{
if ($this->person instanceof Person) {
@@ -401,7 +399,6 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
return $this->scope;
}
#[\Override]
public function getScopes(): iterable
{
if (null !== $this->getAccompanyingPeriod()) {
@@ -425,7 +422,6 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
return $this->socialActions;
}
#[\Override]
public function getSocialIssues(): Collection
{
return $this->socialIssues;
@@ -496,7 +492,6 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
return $this;
}
#[\Override]
public function removeSocialIssue(SocialIssue $socialIssue): self
{
$this->socialIssues->removeElement($socialIssue);

View File

@@ -53,7 +53,6 @@ class ActivityReasonCategory implements \Stringable
$this->reasons = new ArrayCollection();
}
#[\Override]
public function __toString(): string
{
return 'ActivityReasonCategory('.$this->getName('x').')';

View File

@@ -25,11 +25,11 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface;
#[ORM\Table(name: 'activitytype')]
class ActivityType
{
final public const int FIELD_INVISIBLE = 0;
final public const FIELD_INVISIBLE = 0;
final public const int FIELD_OPTIONAL = 1;
final public const FIELD_OPTIONAL = 1;
final public const int FIELD_REQUIRED = 2;
final public const FIELD_REQUIRED = 2;
/**
* @deprecated not in use

View File

@@ -19,13 +19,11 @@ use Symfony\Component\Form\FormBuilderInterface;
class ByActivityNumberAggregator implements AggregatorInterface
{
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data): void
{
$qb
@@ -33,25 +31,21 @@ class ByActivityNumberAggregator implements AggregatorInterface
->addGroupBy('activity_by_number_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACP_TYPE;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder): void
{
// No form needed
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return static function ($value) {
@@ -67,13 +61,11 @@ class ByActivityNumberAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['activity_by_number_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group acp by activity number';

View File

@@ -25,7 +25,7 @@ use Symfony\Component\Form\FormBuilderInterface;
final readonly class ByActivityTypeAggregator implements AggregatorInterface
{
private const string PREFIX = 'acp_by_activity_type_agg';
private const PREFIX = 'acp_by_activity_type_agg';
public function __construct(
private RollingDateConverterInterface $rollingDateConverter,
@@ -33,7 +33,6 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
private TranslatableStringHelperInterface $translatableStringHelper,
) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -47,7 +46,6 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -56,7 +54,6 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
];
}
#[\Override]
public function getLabels($key, array $values, mixed $data)
{
return function (int|string|null $value): string {
@@ -72,25 +69,21 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data)
{
return [self::PREFIX.'_actype_id'];
}
#[\Override]
public function getTitle()
{
return 'export.aggregator.acp.by_activity_type.title';
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -122,7 +115,6 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
->addGroupBy("{$p}_actype_id");
}
#[\Override]
public function applyOn()
{
return Declarations::ACP_TYPE;

View File

@@ -22,13 +22,11 @@ class BySocialActionAggregator implements AggregatorInterface
{
public function __construct(private readonly SocialActionRender $actionRender, private readonly SocialActionRepository $actionRepository) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actsocialaction', $qb->getAllAliases(), true)) {
@@ -39,25 +37,21 @@ class BySocialActionAggregator implements AggregatorInterface
$qb->addGroupBy('socialaction_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY_ACP;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value) {
@@ -75,13 +69,11 @@ class BySocialActionAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['socialaction_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by linked socialaction';

View File

@@ -22,13 +22,11 @@ class BySocialIssueAggregator implements AggregatorInterface
{
public function __construct(private readonly SocialIssueRepository $issueRepository, private readonly SocialIssueRender $issueRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actsocialissue', $qb->getAllAliases(), true)) {
@@ -39,25 +37,21 @@ class BySocialIssueAggregator implements AggregatorInterface
$qb->addGroupBy('socialissue_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY_ACP;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -75,13 +69,11 @@ class BySocialIssueAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['socialissue_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by linked socialissue';

View File

@@ -18,15 +18,13 @@ use Symfony\Component\Form\FormBuilderInterface;
final readonly class ActivityLocationAggregator implements AggregatorInterface
{
public const string KEY = 'activity_location_aggregator';
public const KEY = 'activity_location_aggregator';
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actloc', $qb->getAllAliases(), true)) {
@@ -36,25 +34,21 @@ final readonly class ActivityLocationAggregator implements AggregatorInterface
$qb->addGroupBy(self::KEY);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form required for this aggregator
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data): \Closure
{
return function ($value): string {
@@ -70,13 +64,11 @@ final readonly class ActivityLocationAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::KEY];
}
#[\Override]
public function getTitle()
{
return 'export.aggregator.activity.by_location.Title';

View File

@@ -22,16 +22,13 @@ final readonly class ActivityPresenceAggregator implements AggregatorInterface
{
public function __construct(private ActivityPresenceRepositoryInterface $activityPresenceRepository, private TranslatableStringHelperInterface $translatableStringHelper) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, mixed $data)
{
return function (int|string|null $value): string {
@@ -47,32 +44,27 @@ final readonly class ActivityPresenceAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data)
{
return ['activity_presence_aggregator_attendee'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_activity_presence.Group activity by presence';
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data): void
{
$qb->addSelect('IDENTITY(activity.attendee) AS activity_presence_aggregator_attendee');
$qb->addGroupBy('activity_presence_aggregator_attendee');
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;

View File

@@ -31,13 +31,11 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
protected TranslatableStringHelper $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
// add select element
@@ -69,13 +67,11 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
$qb->addGroupBy($alias);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add(
@@ -93,7 +89,6 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
);
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -101,7 +96,6 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value) use ($data) {
@@ -131,7 +125,6 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
};
}
#[\Override]
public function getQueryKeys($data)
{
// add select element
@@ -146,13 +139,11 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
throw new \RuntimeException('The data provided are not recognised.');
}
#[\Override]
public function getTitle()
{
return 'Aggregate by activity reason';
}
#[\Override]
public function validateForm($data, ExecutionContextInterface $context)
{
if (null === $data['level']) {

View File

@@ -20,17 +20,15 @@ use Symfony\Component\Form\FormBuilderInterface;
class ActivityTypeAggregator implements AggregatorInterface
{
final public const string KEY = 'activity_type_aggregator';
final public const KEY = 'activity_type_aggregator';
public function __construct(protected ActivityTypeRepositoryInterface $activityTypeRepository, protected TranslatableStringHelperInterface $translatableStringHelper) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('acttype', $qb->getAllAliases(), true)) {
@@ -41,25 +39,21 @@ class ActivityTypeAggregator implements AggregatorInterface
$qb->addGroupBy(self::KEY);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form required for this aggregator
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data): \Closure
{
return function (int|string|null $value): string {
@@ -75,13 +69,11 @@ class ActivityTypeAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::KEY];
}
#[\Override]
public function getTitle()
{
return 'Aggregate by activity type';

View File

@@ -20,17 +20,15 @@ use Symfony\Component\Form\FormBuilderInterface;
class ActivityUserAggregator implements AggregatorInterface
{
final public const string KEY = 'activity_user_id';
final public const KEY = 'activity_user_id';
public function __construct(private readonly UserRepository $userRepository, private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
// add select element
@@ -40,25 +38,21 @@ class ActivityUserAggregator implements AggregatorInterface
$qb->addGroupBy(self::KEY);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// nothing to add
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, $values, $data): \Closure
{
return function ($value) {
@@ -76,13 +70,11 @@ class ActivityUserAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data)
{
return [self::KEY];
}
#[\Override]
public function getTitle(): string
{
return 'Aggregate by activity user';

View File

@@ -22,13 +22,11 @@ class ActivityUsersAggregator implements AggregatorInterface
{
public function __construct(private readonly UserRepositoryInterface $userRepository, private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actusers', $qb->getAllAliases(), true)) {
@@ -40,25 +38,21 @@ class ActivityUsersAggregator implements AggregatorInterface
->addGroupBy('activity_users_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// nothing to add on the form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value) {
@@ -76,13 +70,11 @@ class ActivityUsersAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data)
{
return ['activity_users_aggregator'];
}
#[\Override]
public function getTitle()
{
return 'Aggregate by activity users';

View File

@@ -22,20 +22,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class ActivityUsersJobAggregator implements AggregatorInterface
{
private const string PREFIX = 'act_agg_user_job';
private const PREFIX = 'act_agg_user_job';
public function __construct(
private readonly UserJobRepositoryInterface $userJobRepository,
private readonly TranslatableStringHelperInterface $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,22 +60,18 @@ class ActivityUsersJobAggregator implements AggregatorInterface
->addGroupBy("{$p}_select");
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -97,13 +91,11 @@ class ActivityUsersJobAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::PREFIX.'_select'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_user_job.Aggregate by users job';

View File

@@ -22,20 +22,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class ActivityUsersScopeAggregator implements AggregatorInterface
{
private const string PREFIX = 'act_agg_user_scope';
private const PREFIX = 'act_agg_user_scope';
public function __construct(
private readonly ScopeRepositoryInterface $scopeRepository,
private readonly TranslatableStringHelperInterface $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,22 +60,18 @@ class ActivityUsersScopeAggregator implements AggregatorInterface
->addGroupBy("{$p}_select");
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -97,13 +91,11 @@ class ActivityUsersScopeAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::PREFIX.'_select'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_user_scope.Aggregate by users scope';

View File

@@ -22,38 +22,32 @@ class ByCreatorAggregator implements AggregatorInterface
{
public function __construct(private readonly UserRepositoryInterface $userRepository, private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb->addSelect('IDENTITY(activity.createdBy) AS creator_aggregator');
$qb->addGroupBy('creator_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -71,13 +65,11 @@ class ByCreatorAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['creator_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by creator';

View File

@@ -22,13 +22,11 @@ class ByThirdpartyAggregator implements AggregatorInterface
{
public function __construct(private readonly ThirdPartyRepository $thirdPartyRepository, private readonly ThirdPartyRender $thirdPartyRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('acttparty', $qb->getAllAliases(), true)) {
@@ -39,25 +37,21 @@ class ByThirdpartyAggregator implements AggregatorInterface
$qb->addGroupBy('thirdparty_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -75,13 +69,11 @@ class ByThirdpartyAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['thirdparty_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by linked thirdparties';

View File

@@ -22,20 +22,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class CreatorJobAggregator implements AggregatorInterface
{
private const string PREFIX = 'acp_agg_creator_job';
private const PREFIX = 'acp_agg_creator_job';
public function __construct(
private readonly UserJobRepositoryInterface $userJobRepository,
private readonly TranslatableStringHelper $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,22 +60,18 @@ class CreatorJobAggregator implements AggregatorInterface
->addGroupBy("{$p}_select");
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -95,13 +89,11 @@ class CreatorJobAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::PREFIX.'_select'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_creator_job.Group activity by creator job';

View File

@@ -22,20 +22,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class CreatorScopeAggregator implements AggregatorInterface
{
private const string PREFIX = 'acp_agg_creator_scope';
private const PREFIX = 'acp_agg_creator_scope';
public function __construct(
private readonly ScopeRepository $scopeRepository,
private readonly TranslatableStringHelper $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,22 +60,18 @@ class CreatorScopeAggregator implements AggregatorInterface
->addGroupBy("{$p}_select");
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -97,13 +91,11 @@ class CreatorScopeAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return [self::PREFIX.'_select'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_creator_scope.Group activity by creator scope';

View File

@@ -19,21 +19,19 @@ use Symfony\Component\Form\FormBuilderInterface;
class DateAggregator implements AggregatorInterface
{
private const array CHOICES = [
private const CHOICES = [
'by month' => 'month',
'by week' => 'week',
'by year' => 'year',
];
private const string DEFAULT_CHOICE = 'year';
private const DEFAULT_CHOICE = 'year';
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$order = null;
@@ -64,13 +62,11 @@ class DateAggregator implements AggregatorInterface
$qb->addOrderBy('date_aggregator', $order);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('frequency', ChoiceType::class, [
@@ -80,13 +76,11 @@ class DateAggregator implements AggregatorInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return ['frequency' => self::DEFAULT_CHOICE];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return static function ($value) use ($data): string {
@@ -104,13 +98,11 @@ class DateAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['date_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by date';

View File

@@ -22,13 +22,11 @@ class LocationTypeAggregator implements AggregatorInterface
{
public function __construct(private readonly LocationTypeRepository $locationTypeRepository, private readonly TranslatableStringHelper $translatableStringHelper) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actloc', $qb->getAllAliases(), true)) {
@@ -39,25 +37,21 @@ class LocationTypeAggregator implements AggregatorInterface
$qb->addGroupBy('locationtype_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return function ($value): string {
@@ -79,13 +73,11 @@ class LocationTypeAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['locationtype_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'Group activity by locationtype';

View File

@@ -21,43 +21,36 @@ final readonly class PersonAggregator implements AggregatorInterface
{
public function __construct(private LabelPersonHelper $labelPersonHelper) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// nothing to add here
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, mixed $data)
{
return $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.person.by_person.person');
}
#[\Override]
public function getQueryKeys($data)
{
return ['activity_by_person_agg'];
}
#[\Override]
public function getTitle()
{
return 'export.aggregator.person.by_person.title';
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb
@@ -65,7 +58,6 @@ final readonly class PersonAggregator implements AggregatorInterface
->addGroupBy('activity_by_person_agg');
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY_PERSON;

View File

@@ -23,23 +23,20 @@ use Symfony\Component\Form\FormBuilderInterface;
*/
final readonly class PersonsAggregator implements AggregatorInterface
{
private const string PREFIX = 'act_persons_agg';
private const PREFIX = 'act_persons_agg';
public function __construct(private LabelPersonHelper $labelPersonHelper) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// nothing to add here
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, mixed $data)
{
if ($key !== self::PREFIX.'_pid') {
@@ -49,25 +46,21 @@ final readonly class PersonsAggregator implements AggregatorInterface
return $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.activity.by_persons.Persons');
}
#[\Override]
public function getQueryKeys($data)
{
return [self::PREFIX.'_pid'];
}
#[\Override]
public function getTitle()
{
return 'export.aggregator.activity.by_persons.Group activity by persons';
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -78,7 +71,6 @@ final readonly class PersonsAggregator implements AggregatorInterface
->addGroupBy("{$p}_pid");
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;

View File

@@ -21,38 +21,32 @@ class SentReceivedAggregator implements AggregatorInterface
{
public function __construct(private readonly TranslatorInterface $translator) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data): void
{
$qb->addSelect('activity.sentReceived AS activity_sentreceived_aggregator')
->addGroupBy('activity_sentreceived_aggregator');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder): void
{
// No form needed
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getLabels($key, array $values, $data): callable
{
return function (?string $value): string {
@@ -77,13 +71,11 @@ class SentReceivedAggregator implements AggregatorInterface
};
}
#[\Override]
public function getQueryKeys($data): array
{
return ['activity_sentreceived_aggregator'];
}
#[\Override]
public function getTitle(): string
{
return 'export.aggregator.activity.by_sent_received.Group activity by sentreceived';

View File

@@ -36,34 +36,28 @@ class AvgActivityDuration implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'Average activities linked to an accompanying period duration by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_avg_activity_duration' !== $key) {
@@ -73,31 +67,26 @@ class AvgActivityDuration implements ExportInterface, GroupedExportInterface
return static fn ($value) => '_header' === $value ? 'Average activities linked to an accompanying period duration' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_avg_activity_duration'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'Average activity linked to an accompanying period duration';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -127,13 +116,11 @@ class AvgActivityDuration implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -41,37 +41,31 @@ class AvgActivityVisitDuration implements ExportInterface, GroupedExportInterfac
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// TODO: Implement buildForm() method.
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'Average activities linked to an accompanying period visit duration by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_avg_activity_visit_duration' !== $key) {
@@ -81,31 +75,26 @@ class AvgActivityVisitDuration implements ExportInterface, GroupedExportInterfac
return static fn ($value) => '_header' === $value ? 'Average activities linked to an accompanying period visit duration' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_avg_activity_visit_duration'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'Average activity linked to an accompanying period visit duration';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -135,13 +124,11 @@ class AvgActivityVisitDuration implements ExportInterface, GroupedExportInterfac
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -41,34 +41,28 @@ class CountActivity implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'Count activities linked to an accompanying period by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_count_activity' !== $key) {
@@ -78,31 +72,26 @@ class CountActivity implements ExportInterface, GroupedExportInterface
return static fn ($value) => '_header' === $value ? 'Number of activities linked to an accompanying period' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_count_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'Count activities linked to an accompanying period';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -131,13 +120,11 @@ class CountActivity implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -42,34 +42,28 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'export.export.count_household_on_activity.description';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_count_activity' !== $key) {
@@ -79,31 +73,26 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
return static fn ($value) => '_header' === $value ? 'export.export.count_household_on_activity.header' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_count_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'export.export.count_household_on_activity.title';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -140,13 +129,11 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -41,34 +41,28 @@ class CountPersonsOnActivity implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'export.export.count_person_on_activity.description';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_count_activity' !== $key) {
@@ -78,31 +72,26 @@ class CountPersonsOnActivity implements ExportInterface, GroupedExportInterface
return static fn ($value) => '_header' === $value ? 'export.export.count_person_on_activity.header' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_count_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'export.export.count_person_on_activity.title';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -132,13 +121,11 @@ class CountPersonsOnActivity implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -33,37 +33,31 @@ final readonly class ListActivity implements ListInterface, GroupedExportInterfa
private FilterListAccompanyingPeriodHelperInterface $filterListAccompanyingPeriodHelper,
) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$this->helper->buildForm($builder);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return $this->helper->getAllowedFormattersTypes();
}
#[\Override]
public function getDescription()
{
return ListActivityHelper::MSG_KEY.'List activities linked to an accompanying course';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
return match ($key) {
@@ -79,7 +73,6 @@ final readonly class ListActivity implements ListInterface, GroupedExportInterfa
};
}
#[\Override]
public function getQueryKeys($data)
{
return
@@ -92,25 +85,21 @@ final readonly class ListActivity implements ListInterface, GroupedExportInterfa
);
}
#[\Override]
public function getResult($query, $data)
{
return $this->helper->getResult($query, $data);
}
#[\Override]
public function getTitle()
{
return ListActivityHelper::MSG_KEY.'List activity linked to a course';
}
#[\Override]
public function getType()
{
return $this->helper->getType();
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -146,13 +135,11 @@ final readonly class ListActivity implements ListInterface, GroupedExportInterfa
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::LISTS;
}
#[\Override]
public function supportsModifiers()
{
return array_merge(

View File

@@ -40,37 +40,31 @@ class SumActivityDuration implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// TODO: Implement buildForm() method.
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'Sum activities linked to an accompanying period duration by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_sum_activity_duration' !== $key) {
@@ -80,31 +74,26 @@ class SumActivityDuration implements ExportInterface, GroupedExportInterface
return static fn ($value) => '_header' === $value ? 'Sum activities linked to an accompanying period duration' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_sum_activity_duration'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'Sum activity linked to an accompanying period duration';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -134,13 +123,11 @@ class SumActivityDuration implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -40,37 +40,31 @@ class SumActivityVisitDuration implements ExportInterface, GroupedExportInterfac
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// TODO: Implement buildForm() method.
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes(): array
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription(): string
{
return 'Sum activities linked to an accompanying period visit duration by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to an accompanying period';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_sum_activity_visit_duration' !== $key) {
@@ -80,31 +74,26 @@ class SumActivityVisitDuration implements ExportInterface, GroupedExportInterfac
return static fn ($value) => '_header' === $value ? 'Sum activities linked to an accompanying period visit duration' : $value;
}
#[\Override]
public function getQueryKeys($data): array
{
return ['export_sum_activity_visit_duration'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle(): string
{
return 'Sum activity linked to an accompanying period visit duration';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -134,13 +123,11 @@ class SumActivityVisitDuration implements ExportInterface, GroupedExportInterfac
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers(): array
{
return [

View File

@@ -33,34 +33,28 @@ class CountActivity implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription()
{
return 'Count activities linked to a person by various parameters.';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to a person';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_count_activity' !== $key) {
@@ -70,31 +64,26 @@ class CountActivity implements ExportInterface, GroupedExportInterface
return static fn ($value) => '_header' === $value ? 'Number of activities linked to a person' : $value;
}
#[\Override]
public function getQueryKeys($data)
{
return ['export_count_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle()
{
return 'Count activities linked to a person';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -124,13 +113,11 @@ class CountActivity implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers()
{
return [

View File

@@ -34,34 +34,28 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription()
{
return 'export.export.count_household_on_activity_person.description';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to a person';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_count_activity' !== $key) {
@@ -71,31 +65,26 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
return static fn ($value) => '_header' === $value ? 'export.export.count_household_on_activity_person.header' : $value;
}
#[\Override]
public function getQueryKeys($data)
{
return ['export_count_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle()
{
return 'export.export.count_household_on_activity_person.title';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -132,13 +121,11 @@ final readonly class CountHouseholdOnActivity implements ExportInterface, Groupe
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers()
{
return [

View File

@@ -57,7 +57,6 @@ class ListActivity implements ListInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('fields', ChoiceType::class, [
@@ -77,31 +76,26 @@ class ListActivity implements ListInterface, GroupedExportInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return [FormatterInterface::TYPE_LIST];
}
#[\Override]
public function getDescription()
{
return 'List activities linked to a person description';
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to a person';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
switch ($key) {
@@ -171,31 +165,26 @@ class ListActivity implements ListInterface, GroupedExportInterface
}
}
#[\Override]
public function getQueryKeys($data)
{
return $data['fields'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle()
{
return 'List activity linked to a person';
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(static fn ($el) => $el['center'], $acl);
@@ -290,13 +279,11 @@ class ListActivity implements ListInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::LISTS;
}
#[\Override]
public function supportsModifiers()
{
return [

View File

@@ -30,7 +30,7 @@ use Symfony\Component\Form\FormBuilderInterface;
*/
class StatActivityDuration implements ExportInterface, GroupedExportInterface
{
final public const string SUM = 'sum';
final public const SUM = 'sum';
private readonly bool $filterStatsByCenters;
/**
@@ -47,22 +47,18 @@ class StatActivityDuration implements ExportInterface, GroupedExportInterface
$this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center'];
}
#[\Override]
public function buildForm(FormBuilderInterface $builder) {}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function getAllowedFormattersTypes()
{
return [FormatterInterface::TYPE_TABULAR];
}
#[\Override]
public function getDescription()
{
if (self::SUM === $this->action) {
@@ -72,13 +68,11 @@ class StatActivityDuration implements ExportInterface, GroupedExportInterface
throw new \LogicException('this action is not supported: '.$this->action);
}
#[\Override]
public function getGroup(): string
{
return 'Exports of activities linked to a person';
}
#[\Override]
public function getLabels($key, array $values, $data)
{
if ('export_stat_activity' !== $key) {
@@ -90,19 +84,16 @@ class StatActivityDuration implements ExportInterface, GroupedExportInterface
return static fn (string $value) => '_header' === $value ? $header : $value;
}
#[\Override]
public function getQueryKeys($data)
{
return ['export_stat_activity'];
}
#[\Override]
public function getResult($query, $data)
{
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
}
#[\Override]
public function getTitle()
{
if (self::SUM === $this->action) {
@@ -112,13 +103,11 @@ class StatActivityDuration implements ExportInterface, GroupedExportInterface
throw new \LogicException('This action is not supported: '.$this->action);
}
#[\Override]
public function getType(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
{
$centers = array_map(
@@ -156,13 +145,11 @@ class StatActivityDuration implements ExportInterface, GroupedExportInterface
return $qb;
}
#[\Override]
public function requiredRole(): string
{
return ActivityStatsVoter::STATS;
}
#[\Override]
public function supportsModifiers()
{
return [

View File

@@ -28,7 +28,7 @@ use Symfony\Contracts\Translation\TranslatorInterface;
class ListActivityHelper
{
final public const string MSG_KEY = 'export.list.activity.';
final public const MSG_KEY = 'export.list.activity.';
public function __construct(
private readonly ActivityPresenceRepositoryInterface $activityPresenceRepository,

View File

@@ -25,7 +25,7 @@ use Symfony\Component\Form\FormBuilderInterface;
final readonly class ActivityTypeFilter implements FilterInterface
{
private const string BASE_EXISTS = 'SELECT 1 FROM '.Activity::class.' act_type_filter_activity WHERE act_type_filter_activity.accompanyingPeriod = acp';
private const BASE_EXISTS = 'SELECT 1 FROM '.Activity::class.' act_type_filter_activity WHERE act_type_filter_activity.accompanyingPeriod = acp';
public function __construct(
private ActivityTypeRepositoryInterface $activityTypeRepository,
@@ -33,13 +33,11 @@ final readonly class ActivityTypeFilter implements FilterInterface
private RollingDateConverterInterface $rollingDateConverter,
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$exists = self::BASE_EXISTS;
@@ -64,13 +62,11 @@ final readonly class ActivityTypeFilter implements FilterInterface
}
}
#[\Override]
public function applyOn()
{
return Declarations::ACP_TYPE;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_activitytypes', EntityType::class, [
@@ -96,7 +92,6 @@ final readonly class ActivityTypeFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -106,7 +101,6 @@ final readonly class ActivityTypeFilter implements FilterInterface
];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$types = [];
@@ -124,7 +118,6 @@ final readonly class ActivityTypeFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter accompanying course by activity type';

View File

@@ -23,13 +23,11 @@ class BySocialActionFilter implements FilterInterface
{
public function __construct(private readonly SocialActionRender $actionRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actsocialaction', $qb->getAllAliases(), true)) {
@@ -45,13 +43,11 @@ class BySocialActionFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY_ACP;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_socialactions', PickSocialActionType::class, [
@@ -59,13 +55,11 @@ class BySocialActionFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$actions = [];
@@ -81,7 +75,6 @@ class BySocialActionFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by linked socialaction';

View File

@@ -23,13 +23,11 @@ class BySocialIssueFilter implements FilterInterface
{
public function __construct(private readonly SocialIssueRender $issueRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actsocialissue', $qb->getAllAliases(), true)) {
@@ -45,13 +43,11 @@ class BySocialIssueFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY_ACP;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_socialissues', PickSocialIssueType::class, [
@@ -59,13 +55,11 @@ class BySocialIssueFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$issues = [];
@@ -81,7 +75,6 @@ class BySocialIssueFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by linked socialissue';

View File

@@ -22,13 +22,11 @@ use Symfony\Component\Form\FormBuilderInterface;
*/
class HasNoActivityFilter implements FilterInterface
{
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb
@@ -40,31 +38,26 @@ class HasNoActivityFilter implements FilterInterface
');
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACP_TYPE;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
// no form needed
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
return ['Filtered acp which has no activities', []];
}
#[\Override]
public function getTitle(): string
{
return 'Filter acp which has no activity';

View File

@@ -25,13 +25,11 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt
private RollingDateConverterInterface $rollingDateConverter,
) {}
#[\Override]
public function getTitle()
{
return 'export.filter.activity.course_having_activity_between_date.Title';
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -43,7 +41,6 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -52,7 +49,6 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt
];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
return [
@@ -64,13 +60,11 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt
];
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$alias = 'act_period_having_act_betw_date_alias';
@@ -88,7 +82,6 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt
->setParameter($to, $this->rollingDateConverter->convert($data['end_date']));
}
#[\Override]
public function applyOn()
{
return \Chill\PersonBundle\Export\Declarations::ACP_TYPE;

View File

@@ -25,13 +25,11 @@ class ActivityDateFilter implements FilterInterface
{
public function __construct(protected TranslatorInterface $translator, private readonly RollingDateConverterInterface $rollingDateConverter) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -58,13 +56,11 @@ class ActivityDateFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -76,13 +72,11 @@ class ActivityDateFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return ['date_from' => new RollingDate(RollingDate::T_YEAR_PREVIOUS_START), 'date_to' => new RollingDate(RollingDate::T_TODAY)];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
return [
@@ -94,7 +88,6 @@ class ActivityDateFilter implements FilterInterface
];
}
#[\Override]
public function getTitle()
{
return 'Filtered by date activity';

View File

@@ -28,13 +28,11 @@ final readonly class ActivityPresenceFilter implements FilterInterface
private TranslatorInterface $translator
) {}
#[\Override]
public function getTitle()
{
return 'export.filter.activity.by_presence.Filter activity by activity presence';
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('presences', EntityType::class, [
@@ -47,13 +45,11 @@ final readonly class ActivityPresenceFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
$presences = array_map(
@@ -67,13 +63,11 @@ final readonly class ActivityPresenceFilter implements FilterInterface
];
}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb
@@ -81,7 +75,6 @@ final readonly class ActivityPresenceFilter implements FilterInterface
->setParameter('activity_presence_filter_presences', $data['presences']);
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;

View File

@@ -29,13 +29,11 @@ class ActivityTypeFilter implements ExportElementValidatedInterface, FilterInter
protected ActivityTypeRepositoryInterface $activityTypeRepository
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$clause = $qb->expr()->in('activity.activityType', ':selected_activity_types');
@@ -44,13 +42,11 @@ class ActivityTypeFilter implements ExportElementValidatedInterface, FilterInter
$qb->setParameter('selected_activity_types', $data['types']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('types', EntityType::class, [
@@ -74,13 +70,11 @@ class ActivityTypeFilter implements ExportElementValidatedInterface, FilterInter
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
// collect all the reasons'name used in this filter in one array
@@ -94,13 +88,11 @@ class ActivityTypeFilter implements ExportElementValidatedInterface, FilterInter
]];
}
#[\Override]
public function getTitle()
{
return 'Filter by activity type';
}
#[\Override]
public function validateForm($data, ExecutionContextInterface $context)
{
if (null === $data['types'] || 0 === \count($data['types'])) {

View File

@@ -22,13 +22,11 @@ class ActivityUsersFilter implements FilterInterface
{
public function __construct(private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$orX = $qb->expr()->orX();
@@ -41,13 +39,11 @@ class ActivityUsersFilter implements FilterInterface
$qb->andWhere($orX);
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_users', PickUserDynamicType::class, [
@@ -56,13 +52,11 @@ class ActivityUsersFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
$users = [];
@@ -76,7 +70,6 @@ class ActivityUsersFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by users';

View File

@@ -22,13 +22,11 @@ class ByCreatorFilter implements FilterInterface
{
public function __construct(private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb
@@ -38,13 +36,11 @@ class ByCreatorFilter implements FilterInterface
->setParameter('users', $data['accepted_users']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_users', PickUserDynamicType::class, [
@@ -52,13 +48,11 @@ class ByCreatorFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$users = [];
@@ -72,7 +66,6 @@ class ByCreatorFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by creator';

View File

@@ -26,7 +26,7 @@ use Symfony\Contracts\Translation\TranslatorInterface;
final readonly class CreatorJobFilter implements FilterInterface
{
private const string PREFIX = 'acp_act_filter_creator_job';
private const PREFIX = 'acp_act_filter_creator_job';
public function __construct(
private TranslatableStringHelper $translatableStringHelper,
@@ -34,13 +34,11 @@ final readonly class CreatorJobFilter implements FilterInterface
private UserJobRepositoryInterface $userJobRepository,
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -72,13 +70,11 @@ final readonly class CreatorJobFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -94,7 +90,6 @@ final readonly class CreatorJobFilter implements FilterInterface
]);
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$jobs = array_map(
@@ -107,7 +102,6 @@ final readonly class CreatorJobFilter implements FilterInterface
]];
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -115,7 +109,6 @@ final readonly class CreatorJobFilter implements FilterInterface
];
}
#[\Override]
public function getTitle(): string
{
return 'export.filter.activity.by_creator_job.Filter activity by user job';

View File

@@ -24,20 +24,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class CreatorScopeFilter implements FilterInterface
{
private const string PREFIX = 'acp_act_filter_creator_scope';
private const PREFIX = 'acp_act_filter_creator_scope';
public function __construct(
private readonly TranslatableStringHelper $translatableStringHelper,
private readonly ScopeRepositoryInterface $scopeRepository,
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -69,13 +67,11 @@ class CreatorScopeFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -90,7 +86,6 @@ class CreatorScopeFilter implements FilterInterface
]);
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$scopes = [];
@@ -106,7 +101,6 @@ class CreatorScopeFilter implements FilterInterface
]];
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -114,7 +108,6 @@ class CreatorScopeFilter implements FilterInterface
];
}
#[\Override]
public function getTitle(): string
{
return 'export.filter.activity.by_creator_scope.Filter activity by user scope';

View File

@@ -21,22 +21,20 @@ use Symfony\Contracts\Translation\TranslatorInterface;
class EmergencyFilter implements FilterInterface
{
private const array CHOICES = [
private const CHOICES = [
'activity is emergency' => 'true',
'activity is not emergency' => 'false',
];
private const string DEFAULT_CHOICE = 'false';
private const DEFAULT_CHOICE = 'false';
public function __construct(private readonly TranslatorInterface $translator) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -53,13 +51,11 @@ class EmergencyFilter implements FilterInterface
$qb->setParameter('emergency', $data['accepted_emergency']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_emergency', ChoiceType::class, [
@@ -70,13 +66,11 @@ class EmergencyFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return ['accepted_emergency' => self::DEFAULT_CHOICE];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
return [
@@ -88,7 +82,6 @@ class EmergencyFilter implements FilterInterface
];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by emergency';

View File

@@ -19,13 +19,11 @@ use Symfony\Component\Form\FormBuilderInterface;
class LocationFilter implements FilterInterface
{
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$qb->andWhere(
@@ -35,13 +33,11 @@ class LocationFilter implements FilterInterface
$qb->setParameter('location', $data['accepted_location']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_location', PickUserLocationType::class, [
@@ -50,13 +46,11 @@ class LocationFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$locations = [];
@@ -70,7 +64,6 @@ class LocationFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by location';

View File

@@ -23,13 +23,11 @@ class LocationTypeFilter implements FilterInterface
{
public function __construct(private readonly TranslatableStringHelper $translatableStringHelper) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
if (!\in_array('actloc', $qb->getAllAliases(), true)) {
@@ -49,13 +47,11 @@ class LocationTypeFilter implements FilterInterface
$qb->setParameter('locationtype', $data['accepted_locationtype']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_locationtype', PickLocationTypeType::class, [
@@ -64,13 +60,11 @@ class LocationTypeFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$types = [];
@@ -86,7 +80,6 @@ class LocationTypeFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by locationtype';

View File

@@ -28,13 +28,11 @@ class ActivityReasonFilter implements ExportElementValidatedInterface, FilterInt
{
public function __construct(protected TranslatableStringHelper $translatableStringHelper, protected ActivityReasonRepository $activityReasonRepository) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -55,13 +53,11 @@ class ActivityReasonFilter implements ExportElementValidatedInterface, FilterInt
$qb->setParameter('selected_activity_reasons', $data['reasons']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY_PERSON;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('reasons', EntityType::class, [
@@ -74,13 +70,11 @@ class ActivityReasonFilter implements ExportElementValidatedInterface, FilterInt
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
// collect all the reasons'name used in this filter in one array
@@ -97,13 +91,11 @@ class ActivityReasonFilter implements ExportElementValidatedInterface, FilterInt
];
}
#[\Override]
public function getTitle()
{
return 'Filter by reason';
}
#[\Override]
public function validateForm($data, ExecutionContextInterface $context)
{
if (null === $data['reasons'] || 0 === \count($data['reasons'])) {

View File

@@ -34,13 +34,11 @@ final readonly class PersonHavingActivityBetweenDateFilter implements ExportElem
private RollingDateConverterInterface $rollingDateConverter,
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
// create a subquery for activity
@@ -85,13 +83,11 @@ final readonly class PersonHavingActivityBetweenDateFilter implements ExportElem
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::PERSON_TYPE;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('date_from_rolling', PickRollingDateType::class, [
@@ -116,7 +112,6 @@ final readonly class PersonHavingActivityBetweenDateFilter implements ExportElem
}
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -126,7 +121,6 @@ final readonly class PersonHavingActivityBetweenDateFilter implements ExportElem
];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
return [
@@ -147,13 +141,11 @@ final readonly class PersonHavingActivityBetweenDateFilter implements ExportElem
];
}
#[\Override]
public function getTitle()
{
return 'export.filter.activity.person_between_dates.title';
}
#[\Override]
public function validateForm($data, ExecutionContextInterface $context)
{
if ($this->rollingDateConverter->convert($data['date_from_rolling'])

View File

@@ -24,17 +24,15 @@ use Symfony\Component\Form\FormBuilderInterface;
*/
final readonly class PersonsFilter implements FilterInterface
{
private const string PREFIX = 'act_persons_filter';
private const PREFIX = 'act_persons_filter';
public function __construct(private PersonRenderInterface $personRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -49,13 +47,11 @@ final readonly class PersonsFilter implements FilterInterface
$qb->andWhere($orX);
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_persons', PickPersonDynamicType::class, [
@@ -64,7 +60,6 @@ final readonly class PersonsFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -72,7 +67,6 @@ final readonly class PersonsFilter implements FilterInterface
];
}
#[\Override]
public function describeAction($data, $format = 'string')
{
$users = [];
@@ -86,7 +80,6 @@ final readonly class PersonsFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'export.filter.activity.by_persons.Filter activity by persons';

View File

@@ -22,22 +22,20 @@ use Symfony\Contracts\Translation\TranslatorInterface;
class SentReceivedFilter implements FilterInterface
{
private const array CHOICES = [
private const CHOICES = [
'export.filter.activity.by_sent_received.is sent' => Activity::SENTRECEIVED_SENT,
'export.filter.activity.by_sent_received.is received' => Activity::SENTRECEIVED_RECEIVED,
];
private const string DEFAULT_CHOICE = Activity::SENTRECEIVED_SENT;
private const DEFAULT_CHOICE = Activity::SENTRECEIVED_SENT;
public function __construct(private readonly TranslatorInterface $translator) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -54,13 +52,11 @@ class SentReceivedFilter implements FilterInterface
$qb->setParameter('sentreceived', $data['accepted_sentreceived']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_sentreceived', ChoiceType::class, [
@@ -72,13 +68,11 @@ class SentReceivedFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return ['accepted_sentreceived' => self::DEFAULT_CHOICE];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$sentreceived = array_flip(self::CHOICES)[$data['accepted_sentreceived']];
@@ -88,7 +82,6 @@ class SentReceivedFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by sentreceived';

View File

@@ -23,13 +23,11 @@ class UserFilter implements FilterInterface
{
public function __construct(private readonly UserRender $userRender) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$where = $qb->getDQLPart('where');
@@ -46,13 +44,11 @@ class UserFilter implements FilterInterface
$qb->setParameter('users', $data['accepted_users']);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder->add('accepted_users', PickUserDynamicType::class, [
@@ -61,13 +57,11 @@ class UserFilter implements FilterInterface
]);
}
#[\Override]
public function getFormDefaultData(): array
{
return [];
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
$users = [];
@@ -81,7 +75,6 @@ class UserFilter implements FilterInterface
]];
}
#[\Override]
public function getTitle(): string
{
return 'Filter activity by user';

View File

@@ -25,20 +25,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class UsersJobFilter implements FilterInterface
{
private const string PREFIX = 'act_filter_user_job';
private const PREFIX = 'act_filter_user_job';
public function __construct(
private readonly TranslatableStringHelperInterface $translatableStringHelper,
private readonly UserJobRepositoryInterface $userJobRepository
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,13 +60,11 @@ class UsersJobFilter implements FilterInterface
);
}
#[\Override]
public function applyOn()
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -81,7 +77,6 @@ class UsersJobFilter implements FilterInterface
]);
}
#[\Override]
public function describeAction($data, $format = 'string')
{
return ['export.filter.activity.by_users_job.Filtered activity by users job: only %jobs%', [
@@ -95,7 +90,6 @@ class UsersJobFilter implements FilterInterface
]];
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -103,7 +97,6 @@ class UsersJobFilter implements FilterInterface
];
}
#[\Override]
public function getTitle()
{
return 'export.filter.activity.by_users_job.Filter by users job';

View File

@@ -25,20 +25,18 @@ use Symfony\Component\Form\FormBuilderInterface;
class UsersScopeFilter implements FilterInterface
{
private const string PREFIX = 'act_filter_user_scope';
private const PREFIX = 'act_filter_user_scope';
public function __construct(
private readonly ScopeRepositoryInterface $scopeRepository,
private readonly TranslatableStringHelperInterface $translatableStringHelper
) {}
#[\Override]
public function addRole(): ?string
{
return null;
}
#[\Override]
public function alterQuery(QueryBuilder $qb, $data)
{
$p = self::PREFIX;
@@ -62,13 +60,11 @@ class UsersScopeFilter implements FilterInterface
);
}
#[\Override]
public function applyOn(): string
{
return Declarations::ACTIVITY;
}
#[\Override]
public function buildForm(FormBuilderInterface $builder)
{
$builder
@@ -81,7 +77,6 @@ class UsersScopeFilter implements FilterInterface
]);
}
#[\Override]
public function describeAction($data, $format = 'string'): array
{
return ['export.filter.activity.by_users_scope.Filtered activity by users scope: only %scopes%', [
@@ -95,7 +90,6 @@ class UsersScopeFilter implements FilterInterface
]];
}
#[\Override]
public function getFormDefaultData(): array
{
return [
@@ -103,7 +97,6 @@ class UsersScopeFilter implements FilterInterface
];
}
#[\Override]
public function getTitle(): string
{
return 'export.filter.activity.by_users_scope.Filter by users scope';

View File

@@ -20,7 +20,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
class ActivityPresenceType extends AbstractType
{
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
@@ -34,7 +33,6 @@ class ActivityPresenceType extends AbstractType
]);
}
#[\Override]
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([

View File

@@ -19,7 +19,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
class ActivityReasonCategoryType extends AbstractType
{
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
@@ -30,7 +29,6 @@ class ActivityReasonCategoryType extends AbstractType
/**
* @param OptionsResolverInterface $resolver
*/
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
@@ -41,7 +39,6 @@ class ActivityReasonCategoryType extends AbstractType
/**
* @return string
*/
#[\Override]
public function getBlockPrefix()
{
return 'chill_activitybundle_activityreasoncategory';

View File

@@ -21,7 +21,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
class ActivityReasonType extends AbstractType
{
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
@@ -30,7 +29,6 @@ class ActivityReasonType extends AbstractType
->add('category', TranslatableActivityReasonCategoryType::class);
}
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
@@ -41,7 +39,6 @@ class ActivityReasonType extends AbstractType
/**
* @return string
*/
#[\Override]
public function getBlockPrefix()
{
return 'chill_activitybundle_activityreason';

View File

@@ -68,7 +68,6 @@ class ActivityType extends AbstractType
$this->user = $tokenStorage->getToken()->getUser();
}
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options): void
{
// handle times choices
@@ -387,7 +386,6 @@ class ActivityType extends AbstractType
}
}
#[\Override]
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
@@ -402,7 +400,6 @@ class ActivityType extends AbstractType
->setAllowedTypes('accompanyingPeriod', [AccompanyingPeriod::class, 'null']);
}
#[\Override]
public function getBlockPrefix(): string
{
return 'chill_activitybundle_activity';

View File

@@ -21,7 +21,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
class ActivityTypeCategoryType extends AbstractType
{
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
@@ -39,7 +38,6 @@ class ActivityTypeCategoryType extends AbstractType
]);
}
#[\Override]
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([

View File

@@ -27,7 +27,6 @@ class ActivityTypeType extends AbstractType
{
public function __construct(private readonly TranslatableStringHelper $translatableStringHelper) {}
#[\Override]
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
@@ -68,7 +67,6 @@ class ActivityTypeType extends AbstractType
->add('commentVisible', ActivityFieldPresence::class);
}
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([

View File

@@ -18,7 +18,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
class ActivityFieldPresence extends AbstractType
{
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
@@ -32,7 +31,6 @@ class ActivityFieldPresence extends AbstractType
);
}
#[\Override]
public function getParent()
{
return ChoiceType::class;

View File

@@ -30,7 +30,6 @@ class PickActivityReasonType extends AbstractType
private readonly TranslatableStringHelperInterface $translatableStringHelper
) {}
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
@@ -50,13 +49,11 @@ class PickActivityReasonType extends AbstractType
);
}
#[\Override]
public function getBlockPrefix()
{
return 'translatable_activity_reason';
}
#[\Override]
public function getParent()
{
return EntityType::class;

View File

@@ -25,7 +25,6 @@ class TranslatableActivityReasonCategoryType extends AbstractType
{
public function __construct(private readonly TranslatableStringHelperInterface $translatableStringHelper, private readonly TranslatorInterface $translator) {}
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
@@ -37,7 +36,6 @@ class TranslatableActivityReasonCategoryType extends AbstractType
);
}
#[\Override]
public function getParent()
{
return EntityType::class;

View File

@@ -22,7 +22,6 @@ class TranslatableActivityType extends AbstractType
{
public function __construct(protected TranslatableStringHelperInterface $translatableStringHelper, protected ActivityTypeRepositoryInterface $activityTypeRepository) {}
#[\Override]
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
@@ -35,13 +34,11 @@ class TranslatableActivityType extends AbstractType
);
}
#[\Override]
public function getBlockPrefix()
{
return 'translatable_activity_type';
}
#[\Override]
public function getParent()
{
return EntityType::class;

View File

@@ -25,7 +25,6 @@ class AccompanyingCourseMenuBuilder implements LocalMenuBuilderInterface
{
public function __construct(protected Security $security, protected TranslatorInterface $translator) {}
#[\Override]
public function buildMenu($menuId, MenuItem $menu, array $parameters)
{
$period = $parameters['accompanyingCourse'];
@@ -43,7 +42,6 @@ class AccompanyingCourseMenuBuilder implements LocalMenuBuilderInterface
}
}
#[\Override]
public static function getMenuIds(): array
{
return ['accompanyingCourse'];

View File

@@ -20,13 +20,11 @@ final readonly class AccompanyingCourseQuickMenuBuilder implements LocalMenuBuil
{
public function __construct(private Security $security) {}
#[\Override]
public static function getMenuIds(): array
{
return ['accompanying_course_quick_menu'];
}
#[\Override]
public function buildMenu($menuId, MenuItem $menu, array $parameters)
{
/** @var \Chill\PersonBundle\Entity\AccompanyingPeriod $accompanyingCourse */

View File

@@ -22,7 +22,6 @@ final readonly class AdminMenuBuilder implements LocalMenuBuilderInterface
{
public function __construct(private Security $security) {}
#[\Override]
public function buildMenu($menuId, MenuItem $menu, array $parameters)
{
if (!$this->security->isGranted('ROLE_ADMIN')) {
@@ -58,7 +57,6 @@ final readonly class AdminMenuBuilder implements LocalMenuBuilderInterface
])->setExtras(['order' => 5050]);
}
#[\Override]
public static function getMenuIds(): array
{
return ['admin_section', 'admin_activity'];

View File

@@ -25,7 +25,6 @@ final readonly class PersonMenuBuilder implements LocalMenuBuilderInterface
{
public function __construct(private AuthorizationCheckerInterface $authorizationChecker, private TranslatorInterface $translator) {}
#[\Override]
public function buildMenu($menuId, MenuItem $menu, array $parameters)
{
/** @var Person $person */
@@ -43,7 +42,6 @@ final readonly class PersonMenuBuilder implements LocalMenuBuilderInterface
}
}
#[\Override]
public static function getMenuIds(): array
{
return ['person'];

View File

@@ -20,13 +20,11 @@ final readonly class ActivityNotificationHandler implements NotificationHandlerI
{
public function __construct(private ActivityRepository $activityRepository) {}
#[\Override]
public function getTemplate(Notification $notification, array $options = []): string
{
return '@ChillActivity/Activity/showInNotification.html.twig';
}
#[\Override]
public function getTemplateData(Notification $notification, array $options = []): array
{
return [
@@ -35,7 +33,6 @@ final readonly class ActivityNotificationHandler implements NotificationHandlerI
];
}
#[\Override]
public function supports(Notification $notification, array $options = []): bool
{
return Activity::class === $notification->getRelatedEntityClass();

View File

@@ -50,7 +50,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
* @throws NonUniqueResultException
* @throws NoResultException
*/
#[\Override]
public function countByAccompanyingPeriod(AccompanyingPeriod $period, string $role, array $filters = []): int
{
$qb = $this->buildBaseQuery($filters);
@@ -62,7 +61,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
return $qb->getQuery()->getSingleScalarResult();
}
#[\Override]
public function countByPerson(Person $person, string $role, array $filters = []): int
{
$qb = $this->buildBaseQuery($filters);
@@ -74,7 +72,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
return $qb->getQuery()->getSingleScalarResult();
}
#[\Override]
public function findByAccompanyingPeriod(AccompanyingPeriod $period, string $role, ?int $start = 0, ?int $limit = 1000, array $orderBy = ['date' => 'DESC'], array $filters = []): array
{
$qb = $this->buildBaseQuery($filters);
@@ -164,7 +161,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
/**
* @return array<ActivityType>
*/
#[\Override]
public function findActivityTypeByAssociated(AccompanyingPeriod|Person $associated): array
{
$in = $this->em->createQueryBuilder();
@@ -192,7 +188,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
return $qb->getQuery()->getResult();
}
#[\Override]
public function findUserJobByAssociated(AccompanyingPeriod|Person $associated): array
{
$in = $this->em->createQueryBuilder();
@@ -225,7 +220,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
return $qb->getQuery()->getResult();
}
#[\Override]
public function findByAccompanyingPeriodSimplified(AccompanyingPeriod $period, ?int $limit = 1000): array
{
$rsm = new ResultSetMappingBuilder($this->em);
@@ -308,7 +302,6 @@ final readonly class ActivityACLAwareRepository implements ActivityACLAwareRepos
return $nq->getResult(AbstractQuery::HYDRATE_ARRAY);
}
#[\Override]
public function findByPerson(Person $person, string $role, ?int $start = 0, ?int $limit = 1000, ?array $orderBy = [], array $filters = []): array
{
$qb = $this->buildBaseQuery($filters);

View File

@@ -35,7 +35,6 @@ final readonly class ActivityDocumentACLAwareRepository implements ActivityDocum
private Security $security
) {}
#[\Override]
public function buildFetchQueryActivityDocumentLinkedToPersonFromPersonContext(Person $person, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null): FetchQueryInterface
{
$query = $this->buildBaseFetchQueryActivityDocumentLinkedToPersonFromPersonContext($person, $startDate, $endDate, $content);
@@ -72,7 +71,6 @@ final readonly class ActivityDocumentACLAwareRepository implements ActivityDocum
return $this->addWhereClauses($query, $startDate, $endDate, $content);
}
#[\Override]
public function buildFetchQueryActivityDocumentLinkedToAccompanyingPeriodFromPersonContext(Person $person, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null): FetchQuery
{
$storedObjectMetadata = $this->em->getClassMetadata(StoredObject::class);

View File

@@ -24,31 +24,26 @@ class ActivityPresenceRepository implements ActivityPresenceRepositoryInterface
$this->repository = $entityManager->getRepository($this->getClassName());
}
#[\Override]
public function find($id): ?ActivityPresence
{
return $this->repository->find($id);
}
#[\Override]
public function findAll(): array
{
return $this->repository->findAll();
}
#[\Override]
public function findBy(array $criteria, ?array $orderBy = null, ?int $limit = null, ?int $offset = null): array
{
return $this->findBy($criteria, $orderBy, $limit, $offset);
}
#[\Override]
public function findOneBy(array $criteria): ?ActivityPresence
{
return $this->findOneBy($criteria);
}
#[\Override]
public function getClassName(): string
{
return ActivityPresence::class;

Some files were not shown because too many files have changed in this diff Show More