ninegitea/src/ninegitea-1.0/src/Form/ScrumType.php

86 lines
2.5 KiB
PHP

<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Tetranz\Select2EntityBundle\Form\Type\Select2EntityType;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\EntityManager;
class ScrumType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('submit',
SubmitType::class, [
"label" => "Valider",
"attr" => ["class" => "btn btn-success no-print"],
]
);
$builder->add('category',
TextType::class, [
"label" =>"Categorie",
]
);
$builder->add('name',
TextType::class, [
"label" =>"Nom",
]
);
$choices=[];
foreach($options["gitearepos"] as $repo) {
$choices[$repo->full_name]=$repo->id;
}
$builder->add('giteaid',
ChoiceType::class, [
"label" => "Repository Gitea",
"choices" => $choices,
"disabled" => ($options["mode"]=="submit"?false:true),
"placeholder" => "Selectionnez un repository gitea",
]
);
$builder->add('users',
Select2EntityType::class, [
"label" => "Utilisateurs",
"disabled" => false,
"required" => false,
"multiple" => true,
"remote_route" => "app_user_select",
"class" => "App:User",
"primary_key" => "id",
"text_property" => "displayname",
"minimum_input_length" => 0,
"page_limit" => 100,
"allow_clear" => true,
"delay" => 250,
"cache" => false,
"cache_timeout" => 60000,
"language" => "fr",
"placeholder" => "Selectionner des Utilisateurs",
]
);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'App\Entity\Scrum',
'mode' => 'string',
'gitearepos' => 'string',
));
}
}