src/Traits/ECommerce/ProductSortFormTrait.php line 21

Open in your IDE?
  1. <?php
  2. namespace App\Traits\ECommerce;
  3. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  4. use Symfony\Component\Form\FormBuilderInterface;
  5. trait ProductSortFormTrait
  6. {
  7. public function addSortByField(FormBuilderInterface $builder): void
  8. {
  9. $builder
  10. ->add('sortBy', ChoiceType::class, [
  11. 'choices' => [
  12. 'general.sort' => null,
  13. 'general.price_asc' => 'price_asc',
  14. 'general.price_desc' => 'price_desc',
  15. 'general.name_asc' => 'name_asc',
  16. 'general.name_desc' => 'name_desc',
  17. ],
  18. 'choice_label' => fn($choice, $key, $value) => $key,
  19. 'choice_value' => fn($choice) => $choice ?: '',
  20. 'required' => false,
  21. 'placeholder' => false,
  22. 'attr' => [
  23. 'aria-label' => 'Sort',
  24. ],
  25. ]);
  26. }
  27. }