]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/TwitterBridge/twitter.php
* i18n/L10n updates.
[quix0rs-gnu-social.git] / plugins / TwitterBridge / twitter.php
index 94eaedee51c2f90c39df88884949cc01ba425942..d984698ee8ea1e1147db7011c09865e51d2bd338 100644 (file)
@@ -30,7 +30,6 @@ function add_twitter_user($twitter_id, $screen_name)
     // Clear out any bad old foreign_users with the new user's legit URL
     // This can happen when users move around or fakester accounts get
     // repoed, and things like that.
-
     $luser = Foreign_user::getForeignUser($twitter_id, TWITTER_SERVICE);
 
     if (!empty($luser)) {
@@ -69,7 +68,6 @@ function save_twitter_user($twitter_id, $screen_name)
 {
     // Check to see whether the Twitter user is already in the system,
     // and update its screen name and uri if so.
-
     $fuser = Foreign_user::getForeignUser($twitter_id, TWITTER_SERVICE);
 
     if (!empty($fuser)) {
@@ -87,9 +85,7 @@ function save_twitter_user($twitter_id, $screen_name)
         }
 
     } else {
-
         // Kill any old, invalid records for this screen name
-
         $fuser = Foreign_user::getByNickname($screen_name, TWITTER_SERVICE);
 
         if (!empty($fuser)) {
@@ -110,13 +106,11 @@ function save_twitter_user($twitter_id, $screen_name)
 }
 
 function is_twitter_bound($notice, $flink) {
-
     // Check to see if notice should go to Twitter
     if (!empty($flink) && ($flink->noticesync & FOREIGN_NOTICE_SEND)) {
 
         // If it's not a Twitter-style reply, or if the user WANTS to send replies,
         // or if it's in reply to a twitter notice
-
         if (!preg_match('/^@[a-zA-Z0-9_]{1,15}\b/u', $notice->content) ||
             ($flink->noticesync & FOREIGN_NOTICE_SEND_REPLY) ||
             is_twitter_notice($notice->reply_to)) {
@@ -140,10 +134,12 @@ function broadcast_twitter($notice)
                                        TWITTER_SERVICE);
 
     // Don't bother with basic auth, since it's no longer allowed
-
     if (!empty($flink) && TwitterOAuthClient::isPackedToken($flink->credentials)) {
         if (!empty($notice->repeat_of) && is_twitter_notice($notice->repeat_of)) {
-            return retweet_notice($flink, Notice::staticGet('id', $notice->repeat_of));
+            $retweet = retweet_notice($flink, Notice::staticGet('id', $notice->repeat_of));
+            if (!empty($retweet)) {
+                Notice_to_status::saveNew($notice->id, $retweet->id);
+            }
         } else if (is_twitter_bound($notice, $flink)) {
             return broadcast_oauth($notice, $flink);
         }
@@ -159,11 +155,14 @@ function retweet_notice($flink, $notice)
 
     $id = twitter_status_id($notice);
 
+    if (empty($id)) {
+        common_log(LOG_WARNING, "Trying to retweet notice {$notice->id} with no known status id.");
+        return null;
+    }
+
     try {
         $status = $client->statusesRetweet($id);
-        if (!empty($status)) {
-            Notice_to_status::saveNew($notice->id, $status->id);
-        }
+        return $status;
     } catch (OAuthClientException $e) {
         return process_error($e, $flink, $notice);
     }
@@ -171,7 +170,7 @@ function retweet_notice($flink, $notice)
 
 function twitter_status_id($notice)
 {
-    $n2s = Notice_to_status::staticGet('notice_id', $id);
+    $n2s = Notice_to_status::staticGet('notice_id', $notice->id);
     if (empty($n2s)) {
         return null;
     } else {
@@ -223,7 +222,6 @@ function broadcast_oauth($notice, $flink) {
 
         // This could represent a failure posting,
         // or the Twitter API might just be behaving flakey.
-
         $errmsg = sprintf('Twitter bridge - No data returned by Twitter API when ' .
                           'trying to post notice %d for User %s (user id %d).',
                           $notice->id,
@@ -236,7 +234,6 @@ function broadcast_oauth($notice, $flink) {
     }
 
     // Notice crossed the great divide
-
     $msg = sprintf('Twitter bridge - posted notice %d to Twitter using ' .
                    'OAuth for User %s (user id %d).',
                    $notice->id,
@@ -347,7 +344,6 @@ function remove_twitter_link($flink)
  *
  * @return boolean success flag
  */
-
 function mail_twitter_bridge_removed($user)
 {
     $profile = $user->getProfile();
@@ -360,8 +356,8 @@ function mail_twitter_bridge_removed($user)
 
     $body = sprintf(_m('Hi, %1$s. We\'re sorry to inform you that your ' .
         'link to Twitter has been disabled. We no longer seem to have ' .
-    'permission to update your Twitter status. (Did you revoke ' .
-    '%3$s\'s access?)' . "\n\n" .
+    'permission to update your Twitter status. Did you maybe revoke ' .
+    '%3$s\'s access?' . "\n\n" .
     'You can re-enable your Twitter bridge by visiting your ' .
     "Twitter settings page:\n\n\t%2\$s\n\n" .
         "Regards,\n%3\$s\n"),
@@ -372,4 +368,3 @@ function mail_twitter_bridge_removed($user)
     common_switch_locale();
     return mail_to_user($user, $subject, $body);
 }
-