src/Form/VoteVendorType.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Entity\VoteItem;
  4. use phpDocumentor\Reflection\Types\Boolean;
  5. use Symfony\Component\Form\AbstractType;
  6. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  7. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  8. use Symfony\Component\Form\Extension\Core\Type\IntegerType;
  9. use Symfony\Component\Form\Extension\Core\Type\NumberType;
  10. use Symfony\Component\Form\FormBuilderInterface;
  11. use Symfony\Component\OptionsResolver\OptionsResolver;
  12. class VoteVendorType extends AbstractType
  13. {
  14.     public function buildForm(FormBuilderInterface $builder, array $options): void
  15.     {
  16.         $attr = [
  17.             'class' => 'form-control col-1 vendor-vote',
  18.             'min' => 1,
  19.             'default' => 0
  20.         ];
  21.         /**
  22.          * @var VoteItem $voteItem
  23.          */
  24.         $voteItem $builder->getData();
  25.         $max $voteItem->getMaxVotes();
  26.         if (!empty($max)) {
  27.             $attr['max'] = $max;
  28.         }
  29.         $builder
  30.             ->add('Votes'IntegerType::class, [
  31.                 'attr' => $attr,
  32.                 'label_attr' => ['class' => 'col-1 vendor-vote-label']
  33.             ])
  34.             ->add('isSkip'HiddenType::class, [
  35.                     'attr'=> ['default' => false]
  36.                 ]
  37.             )
  38.         ;
  39.     }
  40.     public function configureOptions(OptionsResolver $resolver): void
  41.     {
  42.         $resolver->setDefaults([
  43.             'data_class' => VoteItem::class,
  44.         ]);
  45.     }
  46. }