use \OCP\AppFramework\Http\RedirectResponse;
use \OCP\AppFramework\Http\TemplateResponse;
+use \OCA\Grauphel\Lib\Client;
use \OCA\Grauphel\Lib\Token;
use \OCA\Grauphel\Lib\OAuth;
use \OCA\Grauphel\Lib\Dependencies;
$urlGen = $this->deps->urlGen;
try {
- $provider = new \OAuthProvider();
+ $provider = OAuth::getProvider();
$oauth->registerHandler($provider)
->registerVerificationTokenHandler($provider);
$provider->checkOAuthRequest(
$newToken->tokenKey = 'a' . bin2hex($provider->generateToken(8));
$newToken->secret = 's' . bin2hex($provider->generateToken(8));
$newToken->user = $token->user;
+ $newToken->client = $token->client;
$this->deps->tokens->store($newToken);
return new FormResponse(
return $token;
}
+ $clientTitle = 'unknown';
+ $clientAgent = '';
+ if (isset($_GET['client'])) {
+ $clientAgent = $_GET['client'];
+ $cl = new Client();
+ $clientTitle = $cl->getNiceName($clientAgent);
+ }
+
$res = new TemplateResponse('grauphel', 'oauthAuthorize');
$res->setParams(
array(
'oauth_token' => $token->tokenKey,
+ 'client' => $clientTitle,
'formaction' => $this->deps->urlGen->linkToRoute(
'grauphel.oauth.confirm'
- ),
+ ) . '?client=' . urlencode($clientAgent),
)
);
return $res;
return $res;
}
+ $clientAgent = '';
+ if (isset($_GET['client'])) {
+ $clientAgent = $_GET['client'];
+ }
+
//the user is logged in and authorized
- $provider = new \OAuthProvider();
+ $provider = OAuth::getProvider();
$newToken = new Token('verify');
$newToken->tokenKey = $token->tokenKey;
$newToken->secret = $token->secret;
$newToken->verifier = 'v' . bin2hex($provider->generateToken(8));
$newToken->user = $this->user->getUID();
+ $newToken->client = $clientAgent;
$this->deps->tokens->store($newToken);
$urlGen = $this->deps->urlGen;
try {
- $provider = new \OAuthProvider();
+ $provider = OAuth::getProvider();
$oauth->registerHandler($provider);
$provider->isRequestTokenEndpoint(true);
$provider->checkOAuthRequest(
array(
'oauth_token' => $token->tokenKey,
'oauth_token_secret' => $token->secret,
- 'oauth_callback_confirmed' => 'TRUE'
+ 'oauth_callback_confirmed' => 'true'
)
);
} catch (OAuthException $e) {