person: Person FormType + edit twig

This commit is contained in:
nobohan
2021-06-17 12:27:47 +02:00
parent 901ae47ce6
commit 8406c30c8e
3 changed files with 46 additions and 5 deletions

View File

@@ -34,9 +34,12 @@ use Chill\PersonBundle\Entity\PersonPhone;
use Chill\PersonBundle\Form\Type\Select2MaritalStatusType;
use Symfony\Component\Form\AbstractType;
use Chill\MainBundle\Form\Type\ChillDateType;
use Chill\MainBundle\Form\Type\CommentType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\TelType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
@@ -82,8 +85,17 @@ class PersonType extends AbstractType
->add('birthdate', ChillDateType::class, [
'required' => false,
])
->add('deathdate', ChillDateType::class, [
'required' => false,
])
->add('gender', GenderType::class, array(
'required' => true
))
->add('genderComment', CommentType::class, array(
'required' => false
))
->add('numberOfChildren', IntegerType::class, array(
'required' => false
));
if ($this->configAltNamesHelper->hasAltNames()) {
@@ -111,7 +123,12 @@ class PersonType extends AbstractType
}
if ($this->config['mobilenumber'] === 'visible') {
$builder->add('mobilenumber', TelType::class, array('required' => false));
$builder
->add('mobilenumber', TelType::class, array('required' => false))
->add('acceptSMS', CheckboxType::class, array(
'value' => false,
'required' => true //TODO required only if mobilenumber is filled
));
}
$builder->add('otherPhoneNumbers', ChillCollectionType::class, [
@@ -130,7 +147,9 @@ class PersonType extends AbstractType
]);
if ($this->config['email'] === 'visible') {
$builder->add('email', EmailType::class, array('required' => false));
$builder
->add('email', EmailType::class, array('required' => false))
->add('acceptEmail', CheckboxType::class, array('required' => false));//TODO visible only if email is filled
}
if ($this->config['country_of_birth'] === 'visible') {
@@ -153,9 +172,16 @@ class PersonType extends AbstractType
}
if ($this->config['marital_status'] === 'visible'){
$builder->add('maritalStatus', Select2MaritalStatusType::class, array(
'required' => false
));
$builder
->add('maritalStatus', Select2MaritalStatusType::class, array(
'required' => false
))
->add('maritalStatusDate', ChillDateType::class, array(
'required' => false
))
->add('maritalStatusComment', CommentType::class, array(
'required' => false
));
}
if($options['cFGroup']) {