summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2010-02-15 21:10:45 +0000
committerZach Copley <zach@status.net>2010-02-15 21:10:45 +0000
commit2b6a39f70f1c1917ff53b7908ac2a1819c876166 (patch)
tree7c4c3a98372539b719ab33c4880f0073cceba392
parentd9c9b2a12fe6cbb800440eeb0174d375760e0103 (diff)
Fix for regression introduced with my last update to the
TwitterStatusFetcher: the Twitter bridge was not saving a foreign user record when making a foreign link.
-rw-r--r--plugins/TwitterBridge/twitter.php7
-rw-r--r--plugins/TwitterBridge/twitterauthorization.php14
2 files changed, 15 insertions, 6 deletions
diff --git a/plugins/TwitterBridge/twitter.php b/plugins/TwitterBridge/twitter.php
index de30d9ebf..bd7f19e71 100644
--- a/plugins/TwitterBridge/twitter.php
+++ b/plugins/TwitterBridge/twitter.php
@@ -28,6 +28,7 @@ require_once INSTALLDIR . '/plugins/TwitterBridge/twitteroauthclient.php';
function add_twitter_user($twitter_id, $screen_name)
{
+ common_debug("Add Twitter user");
$new_uri = 'http://twitter.com/' . $screen_name;
@@ -40,7 +41,7 @@ function add_twitter_user($twitter_id, $screen_name)
$luser->service = TWITTER_SERVICE;
$result = $luser->delete();
- if (empty($result)) {
+ if ($result != false) {
common_log(LOG_WARNING,
"Twitter bridge - removed invalid Twitter user squatting on uri: $new_uri");
}
@@ -93,9 +94,9 @@ function save_twitter_user($twitter_id, $screen_name)
$screen_name,
$oldname));
}
-
- return add_twitter_user($twitter_id, $screen_name);
}
+
+ return add_twitter_user($twitter_id, $screen_name);
}
function is_twitter_bound($notice, $flink) {
diff --git a/plugins/TwitterBridge/twitterauthorization.php b/plugins/TwitterBridge/twitterauthorization.php
index dbef438a4..6822d33dd 100644
--- a/plugins/TwitterBridge/twitterauthorization.php
+++ b/plugins/TwitterBridge/twitterauthorization.php
@@ -89,11 +89,15 @@ class TwitterauthorizationAction extends Action
$user = common_current_user();
$flink = Foreign_link::getByUserID($user->id, TWITTER_SERVICE);
- // If there's already a foreign link record, it means we already
- // have an access token, and this is unecessary. So go back.
+ // If there's already a foreign link record and a foreign user
+ // it means the accounts are already linked, and this is unecessary.
+ // So go back.
if (isset($flink)) {
- common_redirect(common_local_url('twittersettings'));
+ $fuser = $flink->getForeignUser();
+ if (!empty($fuser)) {
+ common_redirect(common_local_url('twittersettings'));
+ }
}
}
@@ -254,6 +258,10 @@ class TwitterauthorizationAction extends Action
{
$flink = new Foreign_link();
+ $flink->user_id = $user_id;
+ $flink->service = TWITTER_SERVICE;
+ $flink->delete(); // delete stale flink, if any
+
$flink->user_id = $user_id;
$flink->foreign_id = $twuid;
$flink->service = TWITTER_SERVICE;