<?php
namespace App\Form;
use App\Entity\Provider;
use App\Entity\SolicitudPublica;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\DateType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\TelType;
use Symfony\Component\Form\Extension\Core\Type\TimeType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class SolicitudNoSocioType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$t1 = new \DateTime();
$t1->setTime(9,0);
$t2 = new \DateTime();
$t2->setTime(20,0);
$builder
->add('nombre', null, [
'attr' => [
'placeholder' => 'Nombre',
'class' => 'uk-input'
]
])
->add('apellido', null, [
'attr' => [
'placeholder' => 'Apellido',
'class' => 'uk-input'
]
])
->add('telefono', TelType::class, [
'attr' => [
'placeholder' => 'Teléfono',
'class' => 'uk-input'
]
])
->add('email', EmailType::class, [
'attr' => [
'placeholder' => 'Email',
'class' => 'uk-input'
]
])
// ->add('destino')
// ->add('cadena')
->add('fechaEntrada', DateType::class, [
'widget' => 'single_text',
'attr' => [
'class' => 'uk-input'
]
])
->add('fechaSalida', DateType::class, [
'widget' => 'single_text',
'attr' => [
'class' => 'uk-input'
]
])
->add('adultos', IntegerType::class, [
'attr' => [
'class' => 'uk-input',
'value' => 1,
'min' => 1
]
])
->add('menores', IntegerType::class, [
'attr' => [
'class' => 'uk-input',
'value' => 0,
'min' => 0
]
])
->add('horaDeContactoDesde', TimeType::class,[
'attr' => [
'class' => 'uk-input',
],
'widget' => 'single_text',
'html5' => true,
'help' => 'A partir de esta hora',
'data' => $t1
])
->add('horaDeContactoHasta', TimeType::class,[
'attr' => [
'class' => 'uk-input',
],
'widget' => 'single_text',
'html5' => true,
'help' => 'Hasta esta hora',
'data' => $t2
])
->add('entiendo', CheckboxType::class, [
'label' => 'Entiendo que esto es sólo una solicitud, y en ninguna manera constituye o garantiza Reservación en este Hotel.'
])
->add('autorizacion')
->add('proveedor', EntityType::class, [
'class' => Provider::class,
'data' => $options['proveedor'],
'disabled' => true,
'attr' => [
'class' => 'uk-input',
],
])
;
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => SolicitudPublica::class,
'proveedor' => null,
]);
}
}