]> git.mxchange.org Git - friendica-addons.git/commitdiff
Facebook: detecting of images when exporting
authorMichael Vogel <icarus@dabo.de>
Wed, 21 Mar 2012 09:07:29 +0000 (10:07 +0100)
committerMichael Vogel <icarus@dabo.de>
Wed, 21 Mar 2012 09:07:29 +0000 (10:07 +0100)
facebook/facebook.php

index b2f21b93ed291abb84d56dcb696b72fe9df76f76..ee812d5ecbefa31014b6faa19d4376965549512e 100755 (executable)
@@ -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);
-}}
\ No newline at end of file
+}}