Esempio n. 1
0
 /**
  * Handles impersonation form
  * @param Request $request
  * @return mixed
  */
 public function impersonateAction(Request $request)
 {
     $id = $request->data()->getRequired('id');
     $user = $this->userRepository()->query()->in($id)->findOne();
     $userDomain = $this->builder->auth()->userDomain();
     $userDomain->setUser($user, 'session');
     /** @var SessionProvider $sessionProvider */
     $sessionProvider = $userDomain->provider('session');
     $sessionProvider->persist();
     return $this->redirectResponse('app.processor', array('processor' => 'dashboard'));
 }
Esempio n. 2
0
 /**
  * Handles login form processing
  * @param Request $request
  * @return mixed
  */
 protected function handleLogin(Request $request)
 {
     $domain = $this->builder->auth()->adminDomain();
     /** @var PasswordProvider $passwordProvider */
     $passwordProvider = $domain->provider('password');
     $data = $request->data();
     $user = $passwordProvider->login($data->getRequired('username'), $data->getRequired('password'));
     if ($user === null) {
         return $this->getTemplate(array('loginFailed' => true));
     }
     return $this->loggedInRedirect();
 }
Esempio n. 3
0
 /**
  * Handles signup form processing
  * @param Request $request
  * @return mixed
  */
 protected function handleSignup(Request $request)
 {
     $data = $request->data();
     $validator = $this->getSignupValidator();
     $result = $validator->validate($data->get());
     if (!$result->isValid()) {
         return $this->getTemplate(array('signupResult' => $result, 'activeTab' => 'signUp'));
     }
     $domain = $this->builder->auth()->userDomain();
     /** @var PasswordProvider $passwordProvider */
     $passwordProvider = $domain->provider('password');
     /** @var User $user */
     $user = $this->userRepository()->create();
     $user->email = $data->get('email');
     $user->passwordHash = $passwordProvider->hash($data->get('password'));
     $user->save();
     $domain->setUser($user, 'session');
     /** @var SessionProvider $sessionProvider */
     $sessionProvider = $domain->provider('session');
     $sessionProvider->persist();
     return $this->loggedInRedirect();
 }