diff --git a/src/Form/ActivityEditForm.php b/src/Form/ActivityEditForm.php index dd2051e2..ed242618 100644 --- a/src/Form/ActivityEditForm.php +++ b/src/Form/ActivityEditForm.php @@ -86,7 +86,6 @@ class ActivityEditForm extends AbstractType 'query_builder' => function (ProjectRepository $repo) use ($builder, $project, $customer) { $query = new ProjectFormTypeQuery($project, $customer); $query->setUser($builder->getOption('user')); - // TODO this should only allow creation of projects which did not yet end (see below) $query->setIgnoreDate(true); return $repo->getQueryBuilderForFormType($query); @@ -107,7 +106,6 @@ class ActivityEditForm extends AbstractType 'query_builder' => function (ProjectRepository $repo) use ($builder, $data, $project) { $query = new ProjectFormTypeQuery($project, $data['customer']); $query->setUser($builder->getOption('user')); - // TODO this should only allow creation of projects which did not yet end (see above) $query->setIgnoreDate(true); return $repo->getQueryBuilderForFormType($query); diff --git a/src/Form/Toolbar/ActivityToolbarForm.php b/src/Form/Toolbar/ActivityToolbarForm.php index 8e5dd00c..ed6067c5 100644 --- a/src/Form/Toolbar/ActivityToolbarForm.php +++ b/src/Form/Toolbar/ActivityToolbarForm.php @@ -24,9 +24,14 @@ class ActivityToolbarForm extends AbstractToolbarForm */ public function buildForm(FormBuilderInterface $builder, array $options) { + $newOptions = []; + if ($options['ignore_date'] === true) { + $newOptions['ignore_date'] = true; + } + $this->addSearchTermInputField($builder); - $this->addCustomerMultiChoice($builder, [], true); - $this->addProjectMultiChoice($builder, [], true, false); + $this->addCustomerMultiChoice($builder, $newOptions, true); + $this->addProjectMultiChoice($builder, $newOptions, true, false); $builder->add('globalsOnly', ChoiceType::class, [ 'choices' => [ 'yes' => 1, @@ -51,6 +56,7 @@ class ActivityToolbarForm extends AbstractToolbarForm $resolver->setDefaults([ 'data_class' => ActivityQuery::class, 'csrf_protection' => false, + 'ignore_date' => true, ]); } } diff --git a/src/Form/Toolbar/TimesheetToolbarForm.php b/src/Form/Toolbar/TimesheetToolbarForm.php index 778dcacf..32394524 100644 --- a/src/Form/Toolbar/TimesheetToolbarForm.php +++ b/src/Form/Toolbar/TimesheetToolbarForm.php @@ -23,13 +23,18 @@ class TimesheetToolbarForm extends AbstractToolbarForm */ public function buildForm(FormBuilderInterface $builder, array $options) { + $newOptions = []; + if ($options['ignore_date'] === true) { + $newOptions['ignore_date'] = true; + } + $this->addSearchTermInputField($builder); if ($options['include_user']) { $this->addUsersChoice($builder); } $this->addDateRangeChoice($builder); - $this->addCustomerMultiChoice($builder, [], true); - $this->addProjectMultiChoice($builder, [], true, true); + $this->addCustomerMultiChoice($builder, $newOptions, true); + $this->addProjectMultiChoice($builder, $newOptions, true, true); $this->addActivityMultiChoice($builder, [], true); $this->addTagInputField($builder); $this->addTimesheetStateChoice($builder); @@ -49,6 +54,7 @@ class TimesheetToolbarForm extends AbstractToolbarForm 'data_class' => TimesheetQuery::class, 'csrf_protection' => false, 'include_user' => false, + 'ignore_date' => true, ]); } }