コード例 #1
0
ファイル: UserFixtures.php プロジェクト: dstansby/camdram
 /**
  * {@inheritDoc}
  */
 public function load(ObjectManager $manager)
 {
     $u = new User();
     $u->setEmail('*****@*****.**');
     $u->setPassword(md5('password'));
     $u->setName('Admin User');
     $manager->persist($u);
     $this->addReference('adminuser', $u);
     $u = new User();
     $u->setEmail('*****@*****.**');
     $u->setPassword(md5('password'));
     $u->setName('Test User 1');
     $manager->persist($u);
     $this->addReference('testuser1', $u);
     $u = new User();
     $u->setEmail('*****@*****.**');
     $u->setPassword(md5('password'));
     $u->setName('Test User 2');
     $manager->persist($u);
     $this->addReference('testuser2', $u);
     $u = new User();
     $u->setEmail('*****@*****.**');
     $u->setPassword(md5('password'));
     $u->setName('Society 1 Admin');
     $manager->persist($u);
     $this->addReference('society1adminuser', $u);
     $manager->flush();
 }
コード例 #2
0
ファイル: RestContext.php プロジェクト: dstansby/camdram
 public function createUser($name, $email)
 {
     $user = new User();
     $user->setName($name)->setEmail($email)->setPassword('kdsfsdf');
     $em = $this->getEntityManager();
     $em->persist($user);
     $em->flush();
     return $user;
 }
コード例 #3
0
ファイル: EntityContext.php プロジェクト: dstansby/camdram
 public function getAuthoriseUser()
 {
     if (!$this->authorise_user) {
         $user = new User();
         $user->setName('Authorise User')->setEmail('*****@*****.**');
         $em = $this->getEntityManager();
         $em->persist($user);
         $em->flush();
         $this->authorise_user = $user;
     }
     return $this->authorise_user;
 }
コード例 #4
0
ファイル: UserContext.php プロジェクト: dstansby/camdram
 /**
  * @Given /^the user "([^"]*)" with the email "([^"]*)" and the password "([^"]*)"$/
  */
 public function createUser($name, $email, $password)
 {
     $user = new User();
     $user->setName($name)->setEmail($email);
     $factory = $this->kernel->getContainer()->get('security.encoder_factory');
     $encoder = $factory->getEncoder($user);
     $hashed_password = $encoder->encodePassword($password, $user->getSalt());
     $user->setPassword($hashed_password);
     $em = $this->getEntityManager();
     $em->persist($user);
     $em->flush();
     return $user;
 }
コード例 #5
0
 public function testEmailSearchMultipleMatches()
 {
     $user1 = new User();
     $user1->setName('Test User 1');
     $user1->setEmail('abc123');
     $user2 = new User();
     $user2->setName('Test User 2');
     $user2->setEmail('*****@*****.**');
     $this->em->persist($user1);
     $this->em->persist($user2);
     $this->em->flush();
     $user = $this->getRepository()->findOneByEmail('*****@*****.**');
     $this->assertTrue($user instanceof User);
 }
コード例 #6
0
 public function createPasswordAction(Request $request)
 {
     if (!$this->getUser() instanceof ExternalUser) {
         return $this->redirect($this->generateUrl('acts_camdram_homepage'));
     }
     $user = new User();
     $external_user = $this->getUser();
     $user->setName($external_user->getName());
     $user->setEmail($external_user->getEmail());
     $user->setPerson($external_user->getPerson());
     $user->setIsEmailVerified(true);
     //Raven accounts don't give us a name but the others do,
     //so need to decide whether to include a 'name' field in the form or not
     $type = new CreatePasswordType(!(bool) $user->getName());
     $form = $this->createForm($type, $user);
     if ($request->getMethod() == 'POST') {
         $form->submit($request);
         if ($form->isValid()) {
             /** @var \Acts\CamdramSecurityBundle\Entity\User $user */
             $user = $form->getData();
             $factory = $this->get('security.encoder_factory');
             $encoder = $factory->getEncoder($user);
             $password = $encoder->encodePassword($user->getPassword(), $user->getSalt());
             $user->setPassword($password);
             $user->addExternalUser($external_user);
             $external_user->setUser($user);
             $em = $this->getDoctrine()->getManager();
             $em->persist($user);
             $em->flush();
             $token = new UsernamePasswordToken($user, $user->getPassword(), 'public', $user->getRoles());
             $this->get('event_dispatcher')->dispatch(CamdramSecurityEvents::REGISTRATION_COMPLETE, new UserEvent($user));
             $this->get('security.context')->setToken($token);
             $this->get('camdram.security.authentication_success_handler')->onAuthenticationSuccess($request, $token);
             return $this->redirect($this->generateUrl('acts_camdram_security_create_account_complete'));
         }
     }
     return $this->render('ActsCamdramSecurityBundle:Default:create_password.html.twig', array('form' => $form->createView()));
 }