public function setSessionVariables(SiteUser $user)
 {
     $this->session->set('accountId', $user->getAccountId());
     $this->session->set('institutionId', $user->getInstitution()->getId());
     $this->session->set('institutionName', $user->getInstitution()->getName());
     $this->session->set('isSingleCenterInstitution', InstitutionTypes::SINGLE_CENTER == $user->getInstitution()->getType());
     $this->session->set('institutionSignupStepStatus', $user->getInstitution()->getSignupStepStatus());
     $this->session->set('userFirstName', $user->getFirstName());
     $this->session->set('userLastName', $user->getLastName());
     $this->session->set('userEmail', $user->getEmail());
     //$this->eventDispatcher->dispatch(InstitutionBundleEvents::ON_LOGIN_INSTITUTION_USER, $this->eventFactory->create(InstitutionBundleEvents::ON_LOGIN_INSTITUTION_USER, $user));
 }
 /**
  * Update existing user's basic information|Password
  *
  * @param \HealthCareAbroad\UserBundle\Entity\SiteUser $user
  * @throws \HealthCareAbroad\UserBundle\Services\Exception\FailedAccountRequestException
  * @return SiteUser
  */
 protected function updateUser(\HealthCareAbroad\UserBundle\Entity\SiteUser $user)
 {
     $formData = array('email' => $user->getEmail(), 'first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'middle_name' => $user->getMiddleName(), 'password' => $user->getPassword());
     $response = $this->request->post($this->chromediaAccountsUri . '/' . $user->getAccountId(), array('data' => \base64_encode(\json_encode($formData))));
     if (200 == $response->getStatusCode()) {
         $accountData = \json_decode($response->getBody(true), true);
         $user = $this->hydrateAccountData($user, $accountData);
         return $user;
     } else {
         throw new FailedAccountRequestException($response->getBody());
     }
 }