From b7741276162318b7c592cfce03c2bb7bd86d23a9 Mon Sep 17 00:00:00 2001 From: Friendika Date: Tue, 2 Aug 2011 17:04:03 -0700 Subject: [PATCH] bug #114, warn about linked Facebook item privacy --- addon/facebook/facebook.php | 23 ++++++++++++++++------- boot.php | 2 +- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/addon/facebook/facebook.php b/addon/facebook/facebook.php index 10db7652a..c3261af09 100644 --- a/addon/facebook/facebook.php +++ b/addon/facebook/facebook.php @@ -111,13 +111,13 @@ function facebook_init(&$a) { $token = substr($token,0,strpos($token,'&')); set_pconfig($uid,'facebook','access_token',$token); set_pconfig($uid,'facebook','post','1'); + set_pconfig($uid,'facebook','no_linking',1); fb_get_self($uid); fb_get_friends($uid); fb_consume_all($uid); } - // todo: is this a browser session or a server session? where do we go? } } @@ -258,6 +258,8 @@ function fb_get_friends($uid) { } } +// This is the POST method to the facebook settings page +// Content is posted to Facebook in the function facebook_post_hook() function facebook_post(&$a) { @@ -298,6 +300,8 @@ function facebook_post(&$a) { return; } +// Facebook settings form + function facebook_content(&$a) { if(! local_user()) { @@ -347,14 +351,18 @@ function facebook_content(&$a) { $o .= '
'; $post_by_default = get_pconfig(local_user(),'facebook','post_by_default'); $checked = (($post_by_default) ? ' checked="checked" ' : ''); - $o .= '' . ' ' . t('Post to Facebook by default') . '
'; + $o .= '' . ' ' . t('Post to Facebook by default') . EOL; $no_linking = get_pconfig(local_user(),'facebook','no_linking'); $checked = (($no_linking) ? '' : ' checked="checked" '); - $o .= '' . ' ' . t('Link all your Facebook friends and conversations') . '
'; - - + $o .= '' . ' ' . t('Link all your Facebook friends and conversations') . EOL ; + $hidden = (($a->user['hidewall'] || get_config('system','block_public')) ? true : false); + if(! $hidden) { + $o .= EOL; + $o .= t('Warning: Your Facebook privacy settings can not be imported.') . EOL; + $o .= t('Linked Facebook items may be publicly visible, depending on your privacy settings for this website/account.') . EOL; + } $o .= '
'; } @@ -746,6 +754,8 @@ function fb_consume_all($uid) { $access_token = get_pconfig($uid,'facebook','access_token'); if(! $access_token) return; + + $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); if($s) { $j = json_decode($s); @@ -772,13 +782,12 @@ function fb_consume_stream($uid,$j,$wall = false) { intval($uid) ); - $user = q("SELECT `nickname` FROM `user` WHERE `uid` = %d LIMIT 1", + $user = q("SELECT `nickname`, `blockwall` FROM `user` WHERE `uid` = %d LIMIT 1", intval($uid) ); if(count($user)) $my_local_url = $a->get_baseurl() . '/profile/' . $user[0]['nickname']; - $self_id = get_pconfig($uid,'facebook','self_id'); if(! count($j->data) || (! strlen($self_id))) return; diff --git a/boot.php b/boot.php index fd5de0e94..5f8402ecd 100644 --- a/boot.php +++ b/boot.php @@ -7,7 +7,7 @@ require_once('include/text.php'); require_once("include/pgettext.php"); -define ( 'FRIENDIKA_VERSION', '2.2.1059' ); +define ( 'FRIENDIKA_VERSION', '2.2.1060' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1076 );