Permalink
Browse files

Facebook: detecting of images when exporting

  • Loading branch information...
1 parent 60db7fb commit 40d779af57bb7e8e620c93f6d6d250fff54bff17 @annando annando committed Mar 21, 2012
Showing with 36 additions and 9 deletions.
  1. +36 −9 facebook/facebook.php
View
@@ -664,6 +664,7 @@ function facebook_post_hook(&$a,&$b) {
*/
require_once('include/group.php');
+ require_once('include/html2plain.php');
logger('Facebook post');
@@ -784,7 +785,7 @@ function facebook_post_hook(&$a,&$b) {
if($b['verb'] == ACTIVITY_DISLIKE)
$msg = trim(strip_tags(bbcode($msg)));
- $search_str = $a->get_baseurl() . '/search';
+ /*$search_str = $a->get_baseurl() . '/search';
if(preg_match("/\[url=(.*?)\](.*?)\[\/url\]/is",$msg,$matches)) {
@@ -813,25 +814,51 @@ function facebook_post_hook(&$a,&$b) {
if((strpos($link,z_root()) !== false) && (! $image))
$image = $a->get_baseurl() . '/images/friendica-64.jpg';
- $msg = trim(strip_tags(bbcode($msg)));
+ $msg = trim(strip_tags(bbcode($msg)));*/
+
+ // Test
+
+ // Looking for images
+ if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/is",$b['body'],$matches))
+ $image = $matches[3];
+
+ if(preg_match("/\[img\](.*?)\[\/img\]/is",$b['body'],$matches))
+ $image = $matches[1];
+
+ $html = bbcode($b['body']);
+ $msg = trim($b['title']." \n".html2plain($html, 0, true));
$msg = html_entity_decode($msg,ENT_QUOTES,'UTF-8');
+ $toolong = false;
+
// add any attachments as text urls
- $arr = explode(',',$b['attach']);
+ $arr = explode(',',$b['attach']);
- if(count($arr)) {
+ if(count($arr)) {
$msg .= "\n";
- foreach($arr as $r) {
- $matches = false;
+ foreach($arr as $r) {
+ $matches = false;
$cnt = preg_match('|\[attach\]href=\"(.*?)\" size=\"(.*?)\" type=\"(.*?)\" title=\"(.*?)\"\[\/attach\]|',$r,$matches);
if($cnt) {
- $msg .= $matches[1];
+ $msg .= "\n".$matches[1];
}
}
}
- if (strlen($msg) > FACEBOOK_MAXPOSTLEN) {
+ // To-Do: look for bookmark-bbcode and handle it with priority
+
+ $links = collecturls($html);
+ if (sizeof($links) > 0) {
+ reset($links);
+ $link = current($links);
+ /*if (strlen($msg."\n".$link) <= FACEBOOK_MAXPOSTLEN)
+ $msg .= "\n".$link;
+ else
+ $toolong = true;*/
+ }
+
+ if ((strlen($msg) > FACEBOOK_MAXPOSTLEN) or $toolong) {
$shortlink = "";
require_once('library/slinky.php');
@@ -1502,4 +1529,4 @@ function facebook_delete_url($url,$headers = null, &$redirects = 0, $timeout = 0
curl_close($ch);
return($body);
-}}
+}}

0 comments on commit 40d779a

Please sign in to comment.