From bf6c0346d8d35a719dd1bff1cb4d573d422f99ff Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Wed, 31 May 2017 09:31:18 +0200 Subject: WIP Signed-off-by: Thomas Citharel --- .../EventListener/CreateAccountListener.php | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/Wallabag/FederationBundle/EventListener/CreateAccountListener.php (limited to 'src/Wallabag/FederationBundle/EventListener') diff --git a/src/Wallabag/FederationBundle/EventListener/CreateAccountListener.php b/src/Wallabag/FederationBundle/EventListener/CreateAccountListener.php new file mode 100644 index 00000000..92626b15 --- /dev/null +++ b/src/Wallabag/FederationBundle/EventListener/CreateAccountListener.php @@ -0,0 +1,54 @@ +em = $em; + $this->domainName = $domainName; + } + + public static function getSubscribedEvents() + { + return [ + // when a user register using the normal form + FOSUserEvents::REGISTRATION_COMPLETED => 'createAccount', + // when we manually create a user using the command line + // OR when we create it from the config UI + FOSUserEvents::USER_CREATED => 'createAccount', + ]; + } + + public function createAccount(UserEvent $event) + { + $user = $event->getUser(); + $account = new Account(); + $account->setUser($user) + ->setUsername($user->getUsername()) + ->setServer($this->domainName); + + $this->em->persist($account); + + $user->setAccount($account); + + $this->em->persist($user); + $this->em->flush(); + } +} -- cgit v1.2.3