/** * @return array PDF Document */ public function getIncomingDocuments() { $files = scandir($this->getIncomingFolder(), SCANDIR_SORT_ASCENDING); $pdfFiles = array(); foreach ($files as $file) { if (StringUtils::endsWith($file, '.pdf')) { $pdfFiles[] = $file; } } return $pdfFiles; }
/** * @return bool|string */ public function insertRequest() { $repository = $this->entityManager->getRepository('BDNUserBundle:Login\\RequestToken'); $key = StringUtils::generateRandomString(20, false); $tries = 0; while (($result = $repository->findOneBy(['key' => $key])) != null && $tries < 20) { $key = StringUtils::generateRandomString(20, false); $tries++; } if ($tries >= 20) { return false; } $token = new RequestToken(); $token->setKey($key); $this->entityManager->persist($token); $this->entityManager->flush(); return $key; }
/** * @param UserResponseInterface $response * * @return \FOS\UserBundle\Model\UserInterface|UserInterface */ public function loadUserByOAuthUserResponse(UserResponseInterface $response) { $userInfo = $this->parseResponse($response); $user = $this->userManager->findUserBy(['communityId' => $userInfo['id']]); if ($user === null) { $service = $response->getResourceOwner()->getName(); $setter = 'set' . ucfirst($service); $setter_id = $setter . 'Id'; $setter_token = $setter . 'AccessToken'; /** * @var $user User */ $user = $this->userManager->createUser(); $user->{$setter_id}($userInfo['username']); $user->{$setter_token}($response->getAccessToken()); $user->setUsername($userInfo['username']); $user->setEmail($userInfo['email']); $password = StringUtils::generateRandomString(); $user->setPlainPassword($password); $password = $this->passwordEncoder->encodePassword($user, $user->getPlainPassword()); $user->setPassword($password); $user->setEnabled(true); $user->setCommunityId($userInfo['id']); $user = $this->setGroups($user, $userInfo['groups']); $this->userManager->updateUser($user); if ($this->request->cookies->has(LoginRequestManager::KEY_COOKIE)) { $this->loginRequestManager->assignUserToKey($this->request->cookies->get(LoginRequestManager::KEY_COOKIE), $user); } return $user; } else { $user->setUsername($userInfo['username']); $user->setEmail($userInfo['email']); $user = $this->setGroups($user, $userInfo['groups']); if ($this->request->cookies->has(LoginRequestManager::KEY_COOKIE)) { $this->loginRequestManager->assignUserToKey($this->request->cookies->get(LoginRequestManager::KEY_COOKIE), $user); } } $serviceName = $response->getResourceOwner()->getName(); $setter = 'set' . ucfirst($serviceName) . 'AccessToken'; $user->{$setter}($response->getAccessToken()); return $user; }