<?php
namespace App\Form;
use App\Entity\AddressesList;
use App\Entity\Computing;
use App\Repository\AddressesListRepository;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\DateTimeType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class ComputingType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('Title', null , ['label' => 'Nom du calcul'] )
->add('Addresse' , null, ['label' => "Adresse d'origine ou d'arrivée" , "help"=> "Adresse complète. Ex: 1 rue de la paix 75002 Paris"])
// ->add('Status')
->add('AddressesGroup', null, [
"label" => "Groupe d'adresse",
"help"=> "Choisir le groupe d'adresse avec lequel le calcul va être effectué",
'query_builder' => function (AddressesListRepository $er) {
return $er->createQueryBuilder('a')
->andWhere('a.locked = :val')
->setParameter('val', true);
}
])
->add('DepartureDateTime', DateTimeType::class , [
"label" => 'Date (Optionnnelle)',
'required' => false,
"help"=> "La date choisie doit être dans le futur proche, en dehors des congés scolaires de la zone et des jours de grèves",
'widget' => 'single_text',
'attr' => [
'class' => 'form-control input-inline datetimepicker',
]
] )
->add('lat', NumberType::class , [
//"html5" => true,
'required' => false,
"scale" => 10,
"label" => 'Latitude (Optionnelle)'])
->add('lon', NumberType::class , [
//"html5" => true,
'required' => false,
"scale" => 10,
"label" => 'Longitude (Optionnelle)'])
;
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => Computing::class,
]);
}
}