]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Ticket #2724: gracefully handle attempts to delete or fave/unfave a remote Twitter...
authorBrion Vibber <brion@status.net>
Fri, 19 Nov 2010 23:51:08 +0000 (15:51 -0800)
committerBrion Vibber <brion@status.net>
Fri, 19 Nov 2010 23:51:08 +0000 (15:51 -0800)
Most annoying error case being where the notice was already faved or deleted on Twitter! :)
Such errors will now just fail out and log a note to the syslog -- the rest of what we were doing will continue on unhindered, so you can still delete, favorite, etc and it just won't sync the info over in that case.

plugins/TwitterBridge/TwitterBridgePlugin.php

index 097d4486f91c4d9d214ce2ef6118860237fa8221..b520a4544fa9455196ad497edbf522c208cba621 100644 (file)
@@ -427,10 +427,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();
         }
@@ -464,10 +468,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;
     }
@@ -500,10 +508,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->favoritesDestroy($status_id);
+            $client->favoritesDestroy($status_id);
+        } catch (Exception $e) {
+            common_log(LOG_ERR, "Error attempting to unfavorite bridged notice on Twitter: " . $e->getMessage());
+        }
 
         return true;
     }