From 519edd184b17d905c1c6b89dd5cc565b9c22d715 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Sun, 18 Mar 2012 10:59:01 +0000 Subject: [PATCH 1/2] Delete the app_access_token once the addon is uninstalled. And some more error handling --- facebook/facebook.php | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/facebook/facebook.php b/facebook/facebook.php index 4524a486..a0fa3936 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -75,6 +75,7 @@ function facebook_uninstall() { unregister_hook('plugin_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_del_users(); + del_config('facebook', 'app_access_token'); } @@ -150,8 +151,12 @@ function facebook_init(&$a) { $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,($private_wall) ? false : true); + if (isset($j->data)) { + logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,($private_wall) ? false : true); + } else { + logger('facebook_init: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } @@ -1018,15 +1023,23 @@ function fb_consume_all($uid) { $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,($private_wall) ? false : true); + if (isset($j->data)) { + logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,($private_wall) ? false : true); + } else { + logger('fb_consume_stream: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } $s = fetch_url('https://graph.facebook.com/me/home?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,false); + if (isset($j->data)) { + logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,false); + } else { + logger('fb_consume_stream: feed: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } -- 2.43.5 From 437325c5c8d0e4ed040a46f606646d5e3f1aa483 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Mon, 19 Mar 2012 21:20:51 +0000 Subject: [PATCH 2/2] This deactivated the plugin not only when uninstalling it, but also when updating it --- facebook/facebook.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/facebook/facebook.php b/facebook/facebook.php index 1749a058..3ed40c91 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -46,6 +46,12 @@ * authenticate to your site to establish identity. We will address this * in a future release. */ + + /** TODO + * - Implement a method for the administrator to delete all configuration data the plugin has created, + * e.g. the app_access_token + * - Implement a configuration option to set the polling interval system-wide + */ define('FACEBOOK_MAXPOSTLEN', 420); @@ -57,8 +63,6 @@ function facebook_install() { register_hook('connector_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); register_hook('cron', 'addon/facebook/facebook.php', 'facebook_cron'); register_hook('queue_predeliver', 'addon/facebook/facebook.php', 'fb_queue_hook'); - - if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_add_users(); // Restore settings, if the plugin was installed before } @@ -73,9 +77,6 @@ function facebook_uninstall() { // hook moved unregister_hook('post_local_end', 'addon/facebook/facebook.php', 'facebook_post_hook'); unregister_hook('plugin_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); - - if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_del_users(); - del_config('facebook', 'app_access_token'); } -- 2.43.5