ninesurvey/src/ninesurvey-1.0/src/Form/SurveyheaderType.php

86 lines
2.6 KiB
PHP

<?php
namespace App\Form;
use App\Entity\Survey;
use Symfony\Component\Form\Extension\Core\Type\CollectionType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use FOS\CKEditorBundle\Form\Type\CKEditorType;
class SurveyheaderType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
switch ($options['flow_step']) {
case 1:
$builder->add('title');
$builder->add('description',CKEditorType::class, [
"required" => false,
"config" => [
'uiColor' => '#ffffff',
'height' => 400,
'filebrowserUploadRoute' => 'app_ckeditor_upload',
'language' => 'fr',
],
]);
$builder->add('private', Checkboxtype::class, [
'label' => 'Sondage privé',
'required' => false,
]);
$builder->add('notification', Checkboxtype::class, [
'label' => 'Notifications',
'required' => false,
]);
break;
case 2:
$builder->add('jsonoptions', CollectionType::class, [
'entry_type' => SurveyoptionsType::class,
'entry_options' => ['label' => true],
]);
break;
case 3:
$builder->add('jsonguests', CollectionType::class, [
'entry_type' => SurveyguestsType::class,
'entry_options' => ['label' => true],
]);
break;
case 4:
$builder->add('jsonoptions', HiddenType::class, [
'label' => 'jsonoptions',
'required' => false,
'empty_data' => '',
]);
$builder->add('jsonguests', HiddenType::class, [
'label' => 'jsonguests',
'required' => false,
'empty_data' => '',
]);
break;
}
}
public function getBlockPrefix() {
return 'createSurvey';
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => 'App\Entity\Survey',
]);
}
}