mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
Feature: allow filtering for users in the public form for docgen acc course
This commit is contained in:
parent
5bba1aca93
commit
1167ff25b1
@ -103,6 +103,21 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
{
|
||||
$this->accompanyingPeriodContext->buildAdminForm($builder);
|
||||
|
||||
// $builder
|
||||
// ->add('myActivitiesOnly', CheckboxType::class, [
|
||||
// 'required' => false,
|
||||
// 'label' => 'docgen.myActivitiesOnly',
|
||||
// ])
|
||||
// ->add('myWorksOnly', CheckboxType::class, [
|
||||
// 'required' => false,
|
||||
// 'label' => 'docgen.myWorksOnly',
|
||||
// ]);
|
||||
}
|
||||
|
||||
public function buildPublicForm(FormBuilderInterface $builder, DocGeneratorTemplate $template, $entity): void
|
||||
{
|
||||
$this->accompanyingPeriodContext->buildPublicForm($builder, $template, $entity);
|
||||
|
||||
$builder
|
||||
->add('myActivitiesOnly', CheckboxType::class, [
|
||||
'required' => false,
|
||||
@ -114,11 +129,6 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
]);
|
||||
}
|
||||
|
||||
public function buildPublicForm(FormBuilderInterface $builder, DocGeneratorTemplate $template, $entity): void
|
||||
{
|
||||
$this->accompanyingPeriodContext->buildPublicForm($builder, $template, $entity);
|
||||
}
|
||||
|
||||
public function contextGenerationDataDenormalize(DocGeneratorTemplate $template, $entity, array $data): array
|
||||
{
|
||||
return $this->accompanyingPeriodContext->contextGenerationDataDenormalize($template, $entity, $data);
|
||||
@ -126,7 +136,12 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
|
||||
public function contextGenerationDataNormalize(DocGeneratorTemplate $template, $entity, array $data): array
|
||||
{
|
||||
return $this->accompanyingPeriodContext->contextGenerationDataNormalize($template, $entity, $data);
|
||||
$normalized = $this->accompanyingPeriodContext->contextGenerationDataNormalize($template, $entity, $data);
|
||||
foreach (['myActivitiesOnly', 'myWorksOnly'] as $k) {
|
||||
$normalized[$k] = null !== ($data[$k] ?? null) ? $data[$k] : false;
|
||||
}
|
||||
|
||||
return $normalized;
|
||||
}
|
||||
|
||||
public function filterActivitiesByCurrentUser(array $activities): array
|
||||
@ -163,7 +178,7 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
|
||||
$activities = $this->getActivitiesSimplified($entity);
|
||||
|
||||
$myActivitiesOnly = $template->getOptions()['myActivitiesOnly'];
|
||||
$myActivitiesOnly = $contextGenerationData['myActivitiesOnly'];
|
||||
|
||||
if ($myActivitiesOnly) {
|
||||
$activities = $this->filterActivitiesByCurrentUser($activities);
|
||||
@ -171,12 +186,11 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
|
||||
$data['activities'] = $activities;
|
||||
|
||||
$myWorksOnly = $template->getOptions()['myWorksOnly'];
|
||||
$myWorksOnly = $contextGenerationData['myWorksOnly'];
|
||||
|
||||
if ($myWorksOnly) {
|
||||
$data['course']['works'] = $this->filterWorksByCurrentUser($data['course']['works']);
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
@ -212,7 +226,7 @@ class ListActivitiesByAccompanyingPeriodContext implements
|
||||
|
||||
public function hasPublicForm(DocGeneratorTemplate $template, $entity): bool
|
||||
{
|
||||
return $this->accompanyingPeriodContext->hasPublicForm($template, $entity);
|
||||
return true;
|
||||
}
|
||||
|
||||
public function storeGenerated(DocGeneratorTemplate $template, StoredObject $storedObject, object $entity, array $contextGenerationData): void
|
||||
|
Loading…
x
Reference in New Issue
Block a user