slightly better handling of photos and links for FB.

This commit is contained in:
Friendika 2011-04-28 19:19:36 -07:00
parent b43ed54967
commit 4e4c002006

View file

@ -442,10 +442,22 @@ function facebook_post_hook(&$a,&$b) {
// make links readable before we strip the code // make links readable before we strip the code
if(preg_match("/\[url=(.+?)\](.+?)\[\/url\]/is",$msg,$matches)) {
$link = $matches[1];
if(substr($matches[2],0,5) != '[img]' )
$linkname = $matches[2];
}
$msg = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/is",'$2 $1',$msg); $msg = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/is",'$2 $1',$msg);
if(preg_match("/\[img\](.+?)\[\/img\]/is",$msg,$matches))
$image = $matches[1];
$msg = preg_replace("/\[img\](.+?)\[\/img\]/is", t('Image: ') . '$1', $msg); $msg = preg_replace("/\[img\](.+?)\[\/img\]/is", t('Image: ') . '$1', $msg);
$msg = trim(strip_tags(bbcode($msg))); $msg = trim(strip_tags(bbcode($msg)));
$msg = html_entity_decode($msg,ENT_QUOTES,'UTF-8'); $msg = html_entity_decode($msg,ENT_QUOTES,'UTF-8');
@ -478,6 +490,12 @@ function facebook_post_hook(&$a,&$b) {
'access_token' => $fb_token, 'access_token' => $fb_token,
'message' => $msg 'message' => $msg
); );
if(isset($image))
$postvars['picture'] = $image;
if(isset($link))
$postvars['link'] = $link;
if(isset($linkname))
$postvars['name'] = $linkname;
} }
if(($b['private']) && (! $b['parent'])) { if(($b['private']) && (! $b['parent'])) {
@ -490,17 +508,15 @@ function facebook_post_hook(&$a,&$b) {
} }
if(! $reply) {
if($b['plink'])
$postvars['actions'] = '{"name": "' . t('View on Friendika') . '", "link": "' . $b['plink'] . '"}';
}
if($reply) { if($reply) {
$url = 'https://graph.facebook.com/' . $reply . '/' . (($likes) ? 'likes' : 'comments'); $url = 'https://graph.facebook.com/' . $reply . '/' . (($likes) ? 'likes' : 'comments');
} }
else { else {
$url = 'https://graph.facebook.com/me/feed'; $url = 'https://graph.facebook.com/me/feed';
if($b['plink'])
$postvars['actions'] = '{"name": "' . t('View on Friendika') . '", "link": "' . $b['plink'] . '"}';
} }
logger('facebook: post to ' . $url); logger('facebook: post to ' . $url);
logger('facebook: postvars: ' . print_r($postvars,true)); logger('facebook: postvars: ' . print_r($postvars,true));