X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FTwitterBridge%2FTwitterBridgePlugin.php;h=29192cf53b05c8853ac87b8135153a5c5990e422;hb=894ef352591fe581909c01c46047bf530e59a984;hp=1078abc484a9a126b3995d9423e215a838191f59;hpb=23f69c80b5c6a8730fc6ff3b9f3cec71840de03b;p=quix0rs-gnu-social.git diff --git a/plugins/TwitterBridge/TwitterBridgePlugin.php b/plugins/TwitterBridge/TwitterBridgePlugin.php index 1078abc484..29192cf53b 100644 --- a/plugins/TwitterBridge/TwitterBridgePlugin.php +++ b/plugins/TwitterBridge/TwitterBridgePlugin.php @@ -111,7 +111,7 @@ class TwitterBridgePlugin extends Plugin */ function onRouterInitialized($m) { - $m->connect('admin/twitter', array('action' => 'twitteradminpanel')); + $m->connect('panel/twitter', array('action' => 'twitteradminpanel')); if (self::hasKeys()) { $m->connect( @@ -137,11 +137,11 @@ class TwitterBridgePlugin extends Plugin /* * Add a login tab for 'Sign in with Twitter' * - * @param Action &action the current action + * @param Action $action the current action * * @return void */ - function onEndLoginGroupNav(&$action) + function onEndLoginGroupNav($action) { $action_name = $action->trimmed('action'); @@ -160,11 +160,11 @@ class TwitterBridgePlugin extends Plugin /** * Add the Twitter Settings page to the Connect Settings menu * - * @param Action &$action The calling page + * @param Action $action The calling page * * @return boolean hook return */ - function onEndConnectSettingsNav(&$action) + function onEndConnectSettingsNav($action) { if (self::hasKeys()) { $action_name = $action->trimmed('action'); @@ -228,7 +228,7 @@ class TwitterBridgePlugin extends Plugin */ function onStartEnqueueNotice($notice, &$transports) { - if (self::hasKeys() && $notice->isLocal()) { + if (self::hasKeys() && $notice->isLocal() && $notice->inScope(null)) { // Avoid a possible loop if ($notice->source != 'twitter') { array_push($transports, 'twitter'); @@ -279,9 +279,6 @@ class TwitterBridgePlugin extends Plugin // Incoming statuses <- twitter $manager->connect('tweetin', 'TweetInQueueHandler'); - - // Control messages from our web interface to the import daemon - $manager->connect('tweetctl', 'TweetCtlQueueHandler', 'twitter'); } return true; } @@ -441,10 +438,14 @@ class TwitterBridgePlugin extends Plugin return true; } - $token = TwitterOAuthClient::unpackToken($flink->credentials); - $client = new TwitterOAuthClient($token->key, $token->secret); + try { + $token = TwitterOAuthClient::unpackToken($flink->credentials); + $client = new TwitterOAuthClient($token->key, $token->secret); - $client->statusesDestroy($n2s->status_id); + $client->statusesDestroy($n2s->status_id); + } catch (Exception $e) { + common_log(LOG_ERR, "Error attempting to delete bridged notice from Twitter: " . $e->getMessage()); + } $n2s->delete(); } @@ -478,10 +479,14 @@ class TwitterBridgePlugin extends Plugin return true; } - $token = TwitterOAuthClient::unpackToken($flink->credentials); - $client = new TwitterOAuthClient($token->key, $token->secret); + try { + $token = TwitterOAuthClient::unpackToken($flink->credentials); + $client = new TwitterOAuthClient($token->key, $token->secret); - $client->favoritesCreate($status_id); + $client->favoritesCreate($status_id); + } catch (Exception $e) { + common_log(LOG_ERR, "Error attempting to favorite bridged notice on Twitter: " . $e->getMessage()); + } return true; } @@ -514,11 +519,24 @@ class TwitterBridgePlugin extends Plugin return true; } - $token = TwitterOAuthClient::unpackToken($flink->credentials); - $client = new TwitterOAuthClient($token->key, $token->secret); + try { + $token = TwitterOAuthClient::unpackToken($flink->credentials); + $client = new TwitterOAuthClient($token->key, $token->secret); + + $client->favoritesDestroy($status_id); + } catch (Exception $e) { + common_log(LOG_ERR, "Error attempting to unfavorite bridged notice on Twitter: " . $e->getMessage()); + } - $client->favoritesDestroy($status_id); + return true; + } + function onStartGetProfileUri($profile, &$uri) + { + if (preg_match('!^https?://twitter.com/!', $profile->profileurl)) { + $uri = $profile->profileurl; + return false; + } return true; } }