예제 #1
0
 public function buildToken(Request $req, $firewallName)
 {
     $uid = $req->query->get('uid');
     $token = new Token($firewallName, 'dummy', $uid, [self::IDENTIFIED]);
     $token->setAttribute('nickname', $req->query->get('nickname'));
     if (!empty($req->query->get('gender'))) {
         $token->setAttribute('gender', $req->query->get('gender'));
     }
     return $token;
 }
예제 #2
0
 public function buildToken(Request $req, $firewallName)
 {
     $token = $this->provider->getAccessToken('authorization_code', ['code' => $req->query->get('code')]);
     $providerKey = $req->attributes->get('provider');
     // We got an access token, let's now get the user's details
     /** @var \League\OAuth2\Client\Entity\User */
     $userDetails = $this->provider->getUserDetails($token);
     $internToken = new Token($firewallName, $providerKey, $userDetails->uid, [self::IDENTIFIED]);
     $internToken->setAttribute('nickname', $userDetails->name);
     $internToken->setAttribute('gender', ($userDetails->gender = 'male') ? 'xy' : 'xx');
     $this->logger->debug('facebook', $userDetails->getArrayCopy());
     return $internToken;
 }
예제 #3
0
 protected function setUp()
 {
     $kernel = static::createKernel();
     $kernel->boot();
     $this->formFactory = $kernel->getContainer()->get('form.factory');
     $this->collection = $kernel->getContainer()->get('dokudoki.collection');
     $this->factory = $kernel->getContainer()->get('security.netizen.factory');
     $this->repository = $kernel->getContainer()->get('social.netizen.repository');
     $session = $kernel->getContainer()->get('session');
     $token = new Token('secured_area', 'dummy', '123456789');
     $token->setAttribute('nickname', 'dummy nickname');
     $session->set(NotRegisteredHandler::IDENTIFIED_TOKEN, $token);
     $this->sut = $this->formFactory->create('netizen_register', null, ['csrf_protection' => false, 'minimumAge' => 6, 'adminMode' => false]);
 }
예제 #4
0
 public function buildToken(Request $req, $firewallName)
 {
     $providerKey = $req->attributes->get('provider');
     // Retrieve the temporary credentials from step 2
     $temporaryCredentials = unserialize($this->session->get(self::TEMP_CRED));
     // Third and final part to OAuth 1.0 authentication is to retrieve token
     // credentials (formally known as access tokens in earlier OAuth 1.0
     // specs).
     $tokenCredentials = $this->provider->getTokenCredentials($temporaryCredentials, $req->query->get('oauth_token'), $req->query->get('oauth_verifier'));
     $this->session->remove(self::TEMP_CRED);
     // We got an access token, let's now get the user's details
     /** @var \League\OAuth1\Client\Entity\User */
     $userDetails = $this->provider->getUserDetails($tokenCredentials);
     $internToken = new Token($firewallName, $providerKey, $userDetails->uid, [self::IDENTIFIED]);
     $internToken->setAttribute('nickname', $userDetails->nickname);
     $this->logger->debug('twitter', iterator_to_array($userDetails->getIterator()));
     return $internToken;
 }