Пример #1
0
 /**
  * @return static
  */
 public function withLogins()
 {
     foreach ($this->entity->getUserLogins() as $login) {
         $this->entityDTO->userLogins[] = $this->dtoBuilderFactory->getUserLoginDTOBuilder($login)->build();
     }
     return $this;
 }
Пример #2
0
 /**
  * @param UserLoginResultType $result
  * @param string $email
  * @param string $ip4
  * @param User|null $user
  * @param UserToken|null $userToken
  */
 public function __construct(UserLoginResultType $result, $email, $ip4, User $user = null, UserToken $userToken = null)
 {
     $this->setId();
     $this->setCreated();
     $this->result = $result;
     $this->email = (string) $email;
     $this->ip4 = (int) ip2long($ip4);
     if ($user !== null) {
         $user->addUserLogin($this);
         $this->user = $user;
     }
     if ($userToken !== null) {
         $userToken->addUserLogin($this);
         $this->userToken = $userToken;
     }
 }
 /**
  * @param User $user
  * @param string $password
  * @throws UserPasswordValidationException
  */
 public function assertPasswordValid(User $user, $password)
 {
     if (strlen($password) < 8) {
         throw new UserPasswordValidationException('Password must be at least 8 characters');
     }
     if ($user->verifyPassword($password)) {
         throw new UserPasswordValidationException('Invalid password');
     }
     $tooSimilarValues = [$user->getFirstName(), $user->getLastName(), $user->getFullName(), $user->getEmail()];
     foreach ($tooSimilarValues as $text) {
         if ($this->isTooSimilar($password, $text)) {
             throw new UserPasswordValidationException('Password is too similar to your name or email');
         }
     }
 }
Пример #4
0
 /**
  * @param Iterator $iterator
  * @return ImportResult
  */
 public function import(Iterator $iterator)
 {
     $importResult = new ImportResult();
     foreach ($iterator as $key => $row) {
         if ($key < 2 && $row[0] === 'id') {
             continue;
         }
         $externalId = $this->extractNull($row[0]);
         $name = $this->extractNull($row[1]);
         $address = $this->extractNull($row[2]);
         $zip5 = $this->extractNull($row[3]);
         $city = $this->extractNull($row[4]);
         $phone = $this->extractNull($row[5]);
         $fax = $this->extractNull($row[6]);
         $url = $this->extractNull($row[7]);
         $email = $this->extractNull($row[8]);
         $firstName = $this->parseFirstName($name);
         $lastName = $this->parseLastName($name);
         $user = new User();
         $user->setExternalId($externalId);
         $user->setFirstName($firstName);
         $user->setLastName($lastName);
         if (!empty($email)) {
             $user->setEmail($email);
         }
         try {
             $this->throwValidationErrors($user);
             $this->userRepository->create($user);
             $importResult->incrementSuccess();
         } catch (KommerceException $e) {
             $importResult->addFailedRow($row);
             $importResult->addErrorMessage($e->getMessage());
         }
     }
     return $importResult;
 }
Пример #5
0
 private function setUser(User $user)
 {
     $user->addUserToken($this);
     $this->user = $user;
 }
Пример #6
0
 public function setUser(User $user)
 {
     $user->setCart($this);
     $this->user = $user;
 }
Пример #7
0
 public function getUser($externalId = null)
 {
     $user = new User();
     $user->setExternalId($externalId);
     $user->setEmail('test' . $externalId . '@example.com');
     $user->setPassword('password1');
     $user->setFirstName('John');
     $user->setLastName('Doe');
     return $user;
 }
Пример #8
0
 public function testHasRoles()
 {
     $adminRole = new UserRole();
     $adminRole->setName('admin');
     $user = new User();
     $user->addUserRole($adminRole);
     $this->assertTrue($user->hasUserRoles(['admin']));
     $this->assertFalse($user->hasUserRoles(['developer']));
 }