/** * {@inheritdoc} */ public function loadUserByOAuthUserResponse(UserResponseInterface $response) { $res = $response->getResponse(); // Only allow telecomnancy.net users if (!isset($res['hd']) || strtolower($res['hd']) !== 'telecomnancy.net') { throw new UsernameNotFoundException('Only telecomnancy.net user allowed'); } try { $user = $this->loadUserByUsername($res['email']); } catch (UsernameNotFoundException $e) { // Create new user $user = new User(); $user->setUsername($res['email']); $user->setFirstname($res['given_name']); $user->setLastname($res['family_name']); $user->addDefaultRoles(); $user->setEnabled(true); $user->setOauth(true); $em = $this->container->get('doctrine.orm.entity_manager'); $em->persist($user); $em->flush(); } return $user; }
public function __tostring() { return $this->user->__tostring() . ' (' . date('d/m/Y à H:i:s', $this->created->getTimestamp()) . ')'; }