Merge remote-tracking branch 'origin/master' into rector/rules-symfony

This commit is contained in:
2023-09-27 15:25:29 +02:00
106 changed files with 1259 additions and 506 deletions

View File

@@ -11,7 +11,10 @@ declare(strict_types=1);
namespace Chill\MainBundle\Form;
use Chill\MainBundle\Entity\Center;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
@@ -21,24 +24,18 @@ class CenterType extends AbstractType
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name', TextType::class);
->add('name', TextType::class, [
'label' => 'Nom',
])
->add('isActive', CheckboxType::class, [
'label' => 'Actif ?',
'required' => false,
]);
}
/**
* @param OptionsResolverInterface $resolver
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => \Chill\MainBundle\Entity\Center::class,
]);
}
/**
* @return string
*/
public function getBlockPrefix()
{
return 'chill_mainbundle_center';
$resolver
->setDefault('class', Center::class);
}
}

View File

@@ -47,12 +47,14 @@ final class PickCenterType extends AbstractType
$export->requiredRole()
);
$centersActive = array_filter($centers, fn (Center $c) => $c->getIsActive());
// order alphabetically
usort($centers, fn (Center $a, Center $b) => $a->getCenter() <=> $b->getName());
usort($centersActive, fn (Center $a, Center $b) => $a->getCenter() <=> $b->getName());
$builder->add('center', EntityType::class, [
'class' => Center::class,
'choices' => $centers,
'choices' => $centersActive,
'label' => 'center',
'multiple' => true,
'expanded' => true,

View File

@@ -47,6 +47,8 @@ class PickCenterType extends AbstractType
{
$centers = $this->getReachableCenters($options['role'], $options['scopes']);
$centersActive = array_filter($centers, fn (Center $c) => $c->getIsActive());
if (count($centers) <= 1) {
$multiple = $options['choice_options']['multiple'] ?? false;
$builder->add('center', HiddenType::class);
@@ -61,7 +63,7 @@ class PickCenterType extends AbstractType
$options['choice_options'],
[
'class' => Center::class,
'choices' => $centers,
'choices' => $centersActive,
]
)
);

View File

@@ -57,6 +57,7 @@ class UserType extends AbstractType
'class' => Center::class,
'query_builder' => static function (EntityRepository $er) {
$qb = $er->createQueryBuilder('c');
$qb->where($qb->expr()->eq('c.isActive', 'true'));
$qb->addOrderBy('c.name');
return $qb;