Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Form;
- use App\Entity\Category;
- use App\Form\DataTransformer\CategoryToNumberTransformer;
- use Symfony\Bridge\Doctrine\Form\Type\EntityType;
- use Symfony\Component\Form\AbstractType;
- use Symfony\Component\Form\Extension\Core\Type\FileType;
- use Symfony\Component\Form\Extension\Core\Type\SubmitType;
- use Symfony\Component\Form\Extension\Core\Type\TextareaType;
- use Symfony\Component\Form\Extension\Core\Type\TextType;
- use Symfony\Component\Form\FormBuilderInterface;
- use Symfony\Component\OptionsResolver\OptionsResolver;
- class CategoryType extends AbstractType
- {
- /**
- * @var \App\Form\DataTransformer\RoleToNumberTransformer
- */
- private $transformer;
- public function __construct(CategoryToNumberTransformer $transformer) {
- $this->transformer = $transformer;
- }
- public function buildForm(FormBuilderInterface $builder, array $options)
- {
- $builder
- ->add('name', TextType::class, ['attr' => ['class' => 'form-control', 'autocomplete' => 'off']])
- ->add('thumbnail', FileType::class, ['data_class' => null, 'required' => false, 'empty_data' => null, 'attr' => ['class' => 'form-control-file', 'autocomplete' => 'off']])
- ->add('parentCategory', EntityType::class, [
- 'class' => Category::class,
- 'placeholder' => 'None',
- 'empty_data' => $options['data']->getParentCategory() ,
- 'required' => false,
- 'multiple' => false,
- 'expanded' => false,
- 'choice_label' => function ($parentCat) { return $parentCat->getName();}
- ])
- ->add('description', TextareaType::class, ['required' => false, 'label' => 'Description', 'attr' => ['class' => 'form-control', 'autocomplete' => 'off']])
- ->add('save', SubmitType::class, ['attr' => ['class' => 'btn btn-primary']])
- ;
- }
- public function configureOptions(OptionsResolver $resolver)
- {
- $resolver->setDefaults([
- 'data_class' => Category::class,
- ]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement