]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/accesstoken.php
Make the OpenID settings work with new framework
[quix0rs-gnu-social.git] / actions / accesstoken.php
index e28a9334542f83e214191c2c36a6840d4ec32c6d..ad03b7019047c98908b0ca8373eae6698cb34aa9 100644 (file)
 
 if (!defined('LACONICA')) { exit(1); }
 
-class AccesstokenAction extends Action {
-       function handle($args) {
-               parent::handle($args);
-               common_server_error(_t('Not yet implemented.'));
-       }
+require_once(INSTALLDIR.'/lib/omb.php');
+
+class AccesstokenAction extends Action
+{
+    function handle($args)
+    {
+        parent::handle($args);
+        try {
+            common_debug('getting request from env variables', __FILE__);
+            common_remove_magic_from_request();
+            $req = OAuthRequest::from_request();
+            common_debug('getting a server', __FILE__);
+            $server = omb_oauth_server();
+            common_debug('fetching the access token', __FILE__);
+            $token = $server->fetch_access_token($req);
+            common_debug('got this token: "'.print_r($token,true).'"', __FILE__);
+            common_debug('printing the access token', __FILE__);
+            print $token;
+        } catch (OAuthException $e) {
+            $this->serverError($e->getMessage());
+        }
+    }
 }