diff --git a/src/Bundle/ChillThirdPartyBundle/DependencyInjection/ChillThirdPartyExtension.php b/src/Bundle/ChillThirdPartyBundle/DependencyInjection/ChillThirdPartyExtension.php index 124f5b7f3..d2023fae5 100644 --- a/src/Bundle/ChillThirdPartyBundle/DependencyInjection/ChillThirdPartyExtension.php +++ b/src/Bundle/ChillThirdPartyBundle/DependencyInjection/ChillThirdPartyExtension.php @@ -46,6 +46,7 @@ class ChillThirdPartyExtension extends Extension implements PrependExtensionInte $loader->load('services/fixtures.yaml'); $loader->load('services/serializer.yaml'); $loader->load('services/repository.yaml'); + $loader->load('services/doctrineEventListener.yaml'); } public function prepend(ContainerBuilder $container) diff --git a/src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php b/src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php new file mode 100644 index 000000000..bdeed8866 --- /dev/null +++ b/src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php @@ -0,0 +1,31 @@ +getKind() !== 'company') { + $firstnameCaps = mb_convert_case(mb_strtolower($thirdparty->getFirstname()), MB_CASE_TITLE, 'UTF-8'); + $firstnameCaps = ucwords(strtolower($firstnameCaps), " \t\r\n\f\v'-"); + $thirdparty->setFirstName($firstnameCaps); + + $lastnameCaps = mb_strtoupper($thirdparty->getName(), 'UTF-8'); + $thirdparty->setName($lastnameCaps); + } + } +} diff --git a/src/Bundle/ChillThirdPartyBundle/config/services/doctrineEventListener.yaml b/src/Bundle/ChillThirdPartyBundle/config/services/doctrineEventListener.yaml new file mode 100644 index 000000000..8c48e125e --- /dev/null +++ b/src/Bundle/ChillThirdPartyBundle/config/services/doctrineEventListener.yaml @@ -0,0 +1,9 @@ +services: + Chill\ThirdPartyBundle\EventListener\ThirdPartyEventListener: + autoconfigure: true + tags: + - + name: 'doctrine.orm.entity_listener' + event: 'prePersist' + entity: 'Chill\ThirdPartyBundle\Entity\ThirdParty' + method: 'prePersistThirdParty' \ No newline at end of file