X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=facebook%2Ffacebook.php;h=33d7d187007b889e530ec5fb59fbcbcc0f87ae11;hb=62022eddb9528b98c10f10df8e83e5ef11d8224e;hp=8436ece64510ab7b3eab9c7d2242ca021f7fba27;hpb=df8163fe0debc5345f5aefb7ae2cf1ac92239215;p=friendica-addons.git diff --git a/facebook/facebook.php b/facebook/facebook.php index 8436ece6..33d7d187 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -598,7 +598,7 @@ function facebook_cron($a,$b) { if(strlen($a->config['admin_email']) && !get_config('facebook', 'realtime_err_mailsent')) { $res = mail($a->config['admin_email'], t('Problems with Facebook Real-Time Updates'), - "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannot be solved automatically. Maybe an permission issue?\n\nThis e-mail will only be sent once.", + "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannot be solved automatically. Maybe a permission issue?\n\nPlease try to re-activate it on " . $a->config["system"]["url"] . "/admin/plugins/facebook\n\nThis e-mail will only be sent once.", 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n" . 'Content-type: text/plain; charset=UTF-8' . "\n" . 'Content-transfer-encoding: 8bit' @@ -673,6 +673,7 @@ function facebook_post_hook(&$a,&$b) { */ require_once('include/group.php'); + require_once('include/html2plain.php'); logger('Facebook post'); @@ -793,7 +794,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)) { @@ -822,25 +823,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'); @@ -1588,4 +1615,4 @@ function facebook_delete_url($url,$headers = null, &$redirects = 0, $timeout = 0 curl_close($ch); return($body); -}} \ No newline at end of file +}}