summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2010-01-26 02:40:44 +0000
committerZach Copley <zach@status.net>2010-01-26 00:19:09 -0800
commitce44008d13e39d3e3a95af7d422a82f5ecce61e0 (patch)
treeb8a73437937a563ff5aac445fd6ba4e998b7beac
parent1c1abfc284c3b81cfcd4cd95b80a0e5c120bd962 (diff)
Use "Sign in with Twitter" auth pattern and official Twitter button for Twitter-based login.
See: http://apiwiki.twitter.com/Sign-in-with-Twitter
-rw-r--r--plugins/TwitterBridge/twitter_connect.gifbin2205 -> 0 bytes
-rw-r--r--plugins/TwitterBridge/twitterauthorization.php8
-rw-r--r--plugins/TwitterBridge/twitterlogin.php11
-rw-r--r--plugins/TwitterBridge/twitteroauthclient.php7
4 files changed, 16 insertions, 10 deletions
diff --git a/plugins/TwitterBridge/twitter_connect.gif b/plugins/TwitterBridge/twitter_connect.gif
deleted file mode 100644
index e3d8f3ed7..000000000
--- a/plugins/TwitterBridge/twitter_connect.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/TwitterBridge/twitterauthorization.php b/plugins/TwitterBridge/twitterauthorization.php
index 3f7316b7a..15408668f 100644
--- a/plugins/TwitterBridge/twitterauthorization.php
+++ b/plugins/TwitterBridge/twitterauthorization.php
@@ -50,9 +50,10 @@ require_once INSTALLDIR . '/plugins/TwitterBridge/twitter.php';
*/
class TwitterauthorizationAction extends Action
{
- var $twuid = null;
- var $tw_fields = null;
+ var $twuid = null;
+ var $tw_fields = null;
var $access_token = null;
+ var $signin = null;
/**
* Initialize class members. Looks for 'oauth_token' parameter.
@@ -65,6 +66,7 @@ class TwitterauthorizationAction extends Action
{
parent::prepare($args);
+ $this->signin = $this->boolean('signin');
$this->oauth_token = $this->arg('oauth_token');
return true;
@@ -160,7 +162,7 @@ class TwitterauthorizationAction extends Action
$_SESSION['twitter_request_token'] = $req_tok->key;
$_SESSION['twitter_request_token_secret'] = $req_tok->secret;
- $auth_link = $client->getAuthorizeLink($req_tok);
+ $auth_link = $client->getAuthorizeLink($req_tok, $this->signin);
} catch (OAuthClientException $e) {
$msg = sprintf('OAuth client cURL error - code: %1s, msg: %2s',
diff --git a/plugins/TwitterBridge/twitterlogin.php b/plugins/TwitterBridge/twitterlogin.php
index ae468ea15..ae67b4c15 100644
--- a/plugins/TwitterBridge/twitterlogin.php
+++ b/plugins/TwitterBridge/twitterlogin.php
@@ -46,7 +46,6 @@ require_once INSTALLDIR . '/plugins/TwitterBridge/twitter.php';
* @see SettingsAction
*/
-
class TwitterloginAction extends Action
{
function handle($args)
@@ -67,7 +66,7 @@ class TwitterloginAction extends Action
function getInstructions()
{
- return _('Login with your Twitter Account');
+ return _('Login with your Twitter account');
}
function showPageNotice()
@@ -81,9 +80,11 @@ class TwitterloginAction extends Action
function showContent()
{
- $this->elementStart('a', array('href' => common_local_url('twitterauthorization')));
- $this->element('img', array('src' => common_path('plugins/TwitterBridge/twitter_connect.gif'),
- 'alt' => 'Connect my Twitter account'));
+ $this->elementStart('a', array('href' => common_local_url('twitterauthorization',
+ null,
+ array('signin' => true))));
+ $this->element('img', array('src' => common_path('plugins/TwitterBridge/Sign-in-with-Twitter-lighter.png'),
+ 'alt' => 'Sign in with Twitter'));
$this->elementEnd('a');
}
diff --git a/plugins/TwitterBridge/twitteroauthclient.php b/plugins/TwitterBridge/twitteroauthclient.php
index bad2b74ca..277e7ab40 100644
--- a/plugins/TwitterBridge/twitteroauthclient.php
+++ b/plugins/TwitterBridge/twitteroauthclient.php
@@ -45,6 +45,7 @@ class TwitterOAuthClient extends OAuthClient
{
public static $requestTokenURL = 'https://twitter.com/oauth/request_token';
public static $authorizeURL = 'https://twitter.com/oauth/authorize';
+ public static $signinUrl = 'https://twitter.com/oauth/authenticate';
public static $accessTokenURL = 'https://twitter.com/oauth/access_token';
/**
@@ -97,9 +98,11 @@ class TwitterOAuthClient extends OAuthClient
*
* @return the link
*/
- function getAuthorizeLink($request_token)
+ function getAuthorizeLink($request_token, $signin = false)
{
- return parent::getAuthorizeLink(self::$authorizeURL,
+ $url = ($signin) ? self::$signinUrl : self::$authorizeURL;
+
+ return parent::getAuthorizeLink($url,
$request_token,
common_local_url('twitterauthorization'));
}