/** * Generate access token string - must have validated request token * @return string */ public function accessToken() { $GLOBALS['log']->debug("OAUTH: accessToken"); if (empty($this->token) || $this->token->tstate != OAuthToken::REQUEST) { return null; } $this->token->invalidate(); $token = OAuthToken::generate(); $token->setState(OAuthToken::ACCESS); $token->setConsumer($this->consumer); // transfer user data from request token $token->copyAuthData($this->token); $token->save(); return $token->queryString(); }