/** * Busca pelo usuário da inscrição $id. Caso não exista cria um novo. * * @param Person $person pessoa associada à inscrição * @return User */ protected function getUserIfExistsCreateIfNotExists(Person $person) { $em = $this->getEntityManager(); // se não possui usuário if ($person->getUser() === null) { $user = new User(); $userName = $person->getPersonEmail(); $userPassword = preg_replace('/[.,-]/', '', $person->getPersonCpf()); $pass = UserService::encryptPassword($userPassword); $user->setUserName($userName)->setUserPassword($pass['password'])->setUserPasswordSalt($pass['password_salt'])->setUserActive(true); $person->setUser($user); $em->merge($person); return $user; } return $person->getUser(); }