Example #1
0
 /**
  * Finds user by [[loginid]]
  *
  * @return User|null
  */
 protected function getUser()
 {
     if ($this->_user === null) {
         $this->_user = Credential::findByUsername($this->loginid);
     }
     return $this->_user;
 }
 public function callback(Request $request, $service)
 {
     if ($request->get('error') === 'access_denied') {
         return $this->backToDashboard('Authorization was cancelled.');
     }
     if ($request->has('code') === false) {
         return $this->backToDashboard('Authorization code not found.');
     }
     $this->googleClient->authenticate($request->get('code'));
     $accessToken = $this->googleClient->getAccessToken();
     if (isset($accessToken['error'])) {
         return $this->backToDashboard($accessToken['error']);
     }
     $credential = new Credential();
     $credential->setEmail($this->user->email);
     $credential->setService($service);
     $credential->setValue($accessToken);
     $this->credentialStore->upsert($credential);
     return $this->backToDashboard();
 }