X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=plugins%2FFacebook%2Ffacebookutil.php;h=ac532e18bf2682e086ab56b1134200e0cfbb8cd6;hb=5df61141d28426329d2f4e50e61c131d43d1e405;hp=da53f35e2882eb1a13aa26b4dc40b34f00273cd5;hpb=45a22536498876387ea5b2fd44d6599427b6541a;p=quix0rs-gnu-social.git diff --git a/plugins/Facebook/facebookutil.php b/plugins/Facebook/facebookutil.php index da53f35e28..ac532e18bf 100644 --- a/plugins/Facebook/facebookutil.php +++ b/plugins/Facebook/facebookutil.php @@ -138,21 +138,23 @@ function facebookBroadcastNotice($notice) $code = $e->getCode(); - common_log(LOG_WARNING, 'Facebook returned error code ' . - $code . ': ' . $e->getMessage()); - common_log(LOG_WARNING, - 'Unable to update Facebook status for ' . - "$user->nickname (user id: $user->id)!"); + $msg = "Facebook returned error code $code: " . + $e->getMessage() . ' - ' . + "Unable to update Facebook status (notice $notice->id) " . + "for $user->nickname (user id: $user->id)!"; - if ($code == 200 || $code == 250) { + common_log(LOG_WARNING, $msg); + if ($code == 100 || $code == 200 || $code == 250) { + + // 100 The account is 'inactive' (probably - this is not well documented) // 200 The application does not have permission to operate on the passed in uid parameter. // 250 Updating status requires the extended permission status_update or publish_stream. // see: http://wiki.developers.facebook.com/index.php/Users.setStatus#Example_Return_XML remove_facebook_app($flink); - } else { + } else { // Try sending again later. @@ -168,7 +170,7 @@ function facebookBroadcastNotice($notice) function updateProfileBox($facebook, $flink, $notice) { $fbaction = new FacebookAction($output = 'php://output', - $indent = true, $facebook, $flink); + $indent = null, $facebook, $flink); $fbaction->updateProfileBox($notice); } @@ -258,3 +260,38 @@ function remove_facebook_app($flink) } } + +/** + * Send a mail message to notify a user that her Facebook Application + * access has been removed. + * + * @param User $user user whose Facebook app link has been removed + * + * @return boolean success flag + */ + +function mail_facebook_app_removed($user) +{ + common_init_locale($user->language); + + $profile = $user->getProfile(); + + $site_name = common_config('site', 'name'); + + $subject = sprintf( + _m('Your %1$s Facebook application access has been disabled.', + $site_name)); + + $body = sprintf(_m("Hi, %1\$s. We're sorry to inform you that we are " . + 'unable to update your Facebook status from %2$s, and have disabled ' . + 'the Facebook application for your account. This may be because ' . + 'you have removed the Facebook application\'s authorization, or ' . + 'have deleted your Facebook account. You can re-enable the ' . + 'Facebook application and automatic status updating by ' . + "re-installing the %2\$s Facebook application.\n\nRegards,\n\n%2\$s"), + $user->nickname, $site_name); + + common_init_locale(); + return mail_to_user($user, $subject, $body); + +}