public function tearDown() { \DreamFactory\Core\Models\User::whereEmail('*****@*****.**')->delete(); parent::tearDown(); }
/** * Changes password by security answer. * * @param $email * @param $answer * @param $newPassword * @param bool $login * * @return array * @throws BadRequestException * @throws InternalServerErrorException * @throws NotFoundException */ protected static function changePasswordBySecurityAnswer($email, $answer, $newPassword, $login = true) { if (empty($email)) { throw new BadRequestException("Missing required email for password reset confirmation."); } if (empty($newPassword)) { throw new BadRequestException("Missing new password for reset."); } if (empty($answer)) { throw new BadRequestException("Missing security answer."); } /** @var User $user */ $user = User::whereEmail($email)->first(); if (null === $user) { // bad code throw new NotFoundException("The supplied email and confirmation code were not found in the system."); } static::isAllowed($user); try { // validate answer $isValid = \Hash::check($answer, $user->security_answer); } catch (\Exception $ex) { throw new InternalServerErrorException("Error validating security answer.\n{$ex->getMessage()}"); } if (!$isValid) { throw new BadRequestException("The answer supplied does not match."); } try { $user->password = $newPassword; $user->save(); } catch (\Exception $ex) { throw new InternalServerErrorException("Error processing password change.\n{$ex->getMessage()}"); } if ($login) { static::userLogin($email, $newPassword); return ['success' => true, 'session_token' => Session::getSessionToken()]; } return ['success' => true]; }
public function tearDown() { User::whereEmail('*****@*****.**')->delete(); Role::whereName('test_role')->delete(); App::whereId(1)->update(['role_id' => null]); }
protected function deleteUser($num) { $user = $this->{'user' . $num}; $email = Arr::get($user, 'email'); \DreamFactory\Core\Models\User::whereEmail($email)->delete(); }
/** * If does not exists, creates a shadow LDap user using user info provided * by the Ldap service provider and assigns default role to this user * for all apps in the system. If user already exists then updates user's * role for all apps and returns it. * * @param LdapUserContract $ldapUser * * @return User * @throws \Exception */ public function createShadowADLdapUser(LdapUserContract $ldapUser) { $email = $ldapUser->getEmail(); $serviceName = $this->getName(); if (empty($email)) { $uid = $ldapUser->getUid(); if (empty($uid)) { $uid = str_replace(' ', '', $ldapUser->getName()); } $domain = $ldapUser->getDomain(); $email = $uid . '+' . $serviceName . '@' . $domain; } else { list($emailId, $domain) = explode('@', $email); $email = $emailId . '+' . $serviceName . '@' . $domain; } $user = User::whereEmail($email)->first(); if (empty($user)) { $data = ['name' => $ldapUser->getName(), 'first_name' => $ldapUser->getFirstName(), 'last_name' => $ldapUser->getLastName(), 'email' => $email, 'is_active' => true, 'adldap' => $this->getProviderName(), 'password' => $ldapUser->getPassword()]; $user = User::create($data); } $defaultRole = $this->getDefaultRole(); User::applyDefaultUserAppRole($user, $defaultRole); return $user; }
/** * If does not exists, creates a shadow OAuth user using user info provided * by the OAuth service provider and assigns default role to this user * for all apps in the system. If user already exists then updates user's * role for all apps and returns it. * * @param OAuthUserContract $OAuthUser * * @return User * @throws \Exception */ public function createShadowOAuthUser(OAuthUserContract $OAuthUser) { $fullName = $OAuthUser->getName(); @(list($firstName, $lastName) = explode(' ', $fullName)); $email = $OAuthUser->getEmail(); $serviceName = $this->getName(); $providerName = $this->getProviderName(); $accessToken = $OAuthUser->token; if (empty($email)) { $email = $OAuthUser->getId() . '+' . $serviceName . '@' . $serviceName . '.com'; } else { list($emailId, $domain) = explode('@', $email); $email = $emailId . '+' . $serviceName . '@' . $domain; } $user = User::whereEmail($email)->first(); if (empty($user)) { $data = ['name' => $fullName, 'first_name' => $firstName, 'last_name' => $lastName, 'email' => $email, 'is_active' => true, 'oauth_provider' => $providerName, 'password' => $accessToken]; $user = User::create($data); } $defaultRole = $this->getDefaultRole(); User::applyDefaultUserAppRole($user, $defaultRole); return $user; }
public function tearDown() { $email = Arr::get($this->user1, 'email'); User::whereEmail($email)->delete(); parent::tearDown(); }
protected function deleteUser($num) { $user = $this->{'user' . $num}; $email = Arr::get($user, 'email'); User::whereEmail($email)->delete(); }