mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-07-03 23:46:12 +00:00
fix behaviour when phone is newly created
This commit is contained in:
parent
2d76294c26
commit
127803a94c
@ -107,4 +107,9 @@ class PersonPhone
|
|||||||
{
|
{
|
||||||
$this->date = $date;
|
$this->date = $date;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function isEmpty(): bool
|
||||||
|
{
|
||||||
|
return empty($this->getDescription()) && empty($this->getPhonenumber());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,7 @@ use Chill\PersonBundle\Config\ConfigPersonAltNamesHelper;
|
|||||||
use Chill\PersonBundle\Form\Type\GenderType;
|
use Chill\PersonBundle\Form\Type\GenderType;
|
||||||
use Chill\PersonBundle\Form\Type\PersonAltNameType;
|
use Chill\PersonBundle\Form\Type\PersonAltNameType;
|
||||||
use Chill\PersonBundle\Form\Type\PersonPhoneType;
|
use Chill\PersonBundle\Form\Type\PersonPhoneType;
|
||||||
|
use Chill\PersonBundle\Entity\PersonPhone;
|
||||||
use Chill\PersonBundle\Form\Type\Select2MaritalStatusType;
|
use Chill\PersonBundle\Form\Type\Select2MaritalStatusType;
|
||||||
use Symfony\Component\Form\AbstractType;
|
use Symfony\Component\Form\AbstractType;
|
||||||
use Symfony\Component\Form\Extension\Core\Type\DateType;
|
use Symfony\Component\Form\Extension\Core\Type\DateType;
|
||||||
@ -120,6 +121,9 @@ class PersonType extends AbstractType
|
|||||||
'allow_delete' => true,
|
'allow_delete' => true,
|
||||||
'by_reference' => false,
|
'by_reference' => false,
|
||||||
'label' => false,
|
'label' => false,
|
||||||
|
'delete_empty' => function(PersonPhone $pp = null) {
|
||||||
|
return NULL === $pp || $pp->isEmpty();
|
||||||
|
}
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if ($this->config['email'] === 'visible') {
|
if ($this->config['email'] === 'visible') {
|
||||||
|
@ -39,10 +39,14 @@ class PersonPhoneType extends AbstractType
|
|||||||
]);
|
]);
|
||||||
|
|
||||||
$builder->addEventListener(FormEvents::POST_SUBMIT, function(FormEvent $event) {
|
$builder->addEventListener(FormEvents::POST_SUBMIT, function(FormEvent $event) {
|
||||||
|
if (NULL === $event->getData()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$oldPersonPhone = $this->em->getUnitOfWork()
|
$oldPersonPhone = $this->em->getUnitOfWork()
|
||||||
->getOriginalEntityData($event->getData());
|
->getOriginalEntityData($event->getData());
|
||||||
|
|
||||||
if ($oldPersonPhone['phonenumber'] !== $event->getForm()->getData()->getPhonenumber()) {
|
if ($oldPersonPhone['phonenumber'] ?? null !== $event->getForm()->getData()->getPhonenumber()) {
|
||||||
$type = $this->phonenumberHelper->getType($event->getData()->getPhonenumber());
|
$type = $this->phonenumberHelper->getType($event->getData()->getPhonenumber());
|
||||||
$event->getData()->setType($type);
|
$event->getData()->setType($type);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user