ninenote/src/ninenote-1.0/src/Form/AssignmentmatterType.php

134 lines
4.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\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\Extension\Core\Type\RepeatedType;
use Symfony\Component\Form\Extension\Core\Type\PasswordType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\Extension\Core\Type\ButtonType;
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 AssignmentmatterType 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('matter',
Select2EntityType::class, [
"label" => "Matière",
"disabled" => ($options["mode"]=="update"),
"required" => true,
"multiple" => false,
"remote_route" => "app_matter_select",
"class" => "App:Matter",
"primary_key" => "id",
"text_property" => "name",
"minimum_input_length" => 0,
"page_limit" => 100,
"allow_clear" => true,
"delay" => 250,
"cache" => false,
"cache_timeout" => 60000,
"language" => "fr",
"placeholder" => "Selectionner une Matière",
]
);
$builder->add('teachers',
Select2EntityType::class, [
"label" => "Professeurs",
"disabled" => false,
"required" => false,
"multiple" => true,
"remote_route" => "app_teacher_classroom_select",
"remote_params" => ["id"=>$options["idclassroom"]],
"class" => "App:Teacher",
"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 Professeurs",
]
);
$builder->add('coefficient',
NumberType::class, [
"label" =>"Coefficient ",
"scale" => 2,
]
);
$builder->add('isoption',
CheckboxType::class, [
"label" =>"Matière optionnelle",
"required" => false,
]
);
$builder->add('ispartial',
CheckboxType::class, [
"label" =>"Concerne une partie de la classe",
"required" => false,
]
);
$builder->add('students',
Select2EntityType::class, [
"label" => "Elèves",
"disabled" => false,
"required" => false,
"multiple" => true,
"remote_route" => "app_student_classroom_select",
"remote_params" => ["id"=>$options["idclassroom"]],
"class" => "App:Student",
"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 Elèves",
]
);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'App\Entity\Assignmentmatter',
'mode' => 'string',
'idclassroom' => 'string'
));
}
}