<?php
namespace App\Form;
use App\Entity\ForumReport;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Validator\Constraints\Length;
class ForumReportType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('type', ChoiceType::class, [
'attr' => [
'class' => 'with-border selectpicker',
],
'choices' => [
'Inappropriate or offensive content' => 'Inappropriate or offensive content',
'Spam or unwanted content' => 'Spam or unwanted content',
'Misleading or false information' => 'Misleading or false information',
'Identity or impersonation' => 'Identity or impersonation',
'Plagiarism or copyright violation' => 'Plagiarism or copyright violation',
'Other' => 'Other',
],
'expanded' => false
])
->add('remarque', TextareaType::class, [
'attr' => [
'class' => 'with-border selectpicker',
'placeholder' => 'Message'
],
'constraints' => [
new Length([
'max' => 300,
'maxMessage' => 'Only { limit } characters',
])
]
])
->add('report_entity', HiddenType::class, [
'mapped' => false
])
->add('rubrique_id', HiddenType::class, [
'mapped' => false
])
;
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => ForumReport::class,
]);
}
}