diff --git a/facebook/facebook.php b/facebook/facebook.php index 30f728628..51f1fc846 100644 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -1004,6 +1004,10 @@ function facebook_post_hook(&$a,&$b) { if(preg_match("/\[img\](.*?)\[\/img\]/is",$b['body'],$matches)) $image = $matches[1]; + // When saved into the database the content is sent through htmlspecialchars + // That means that we have to decode all image-urls + $image = htmlspecialchars_decode($image); + // Checking for a bookmark element $body = $b['body']; if (strpos($body, "[bookmark") !== false) { @@ -1110,10 +1114,10 @@ function facebook_post_hook(&$a,&$b) { 'access_token' => $fb_token, 'message' => $msg ); - if(isset($image)) { + if(trim($image) != "") { $postvars['picture'] = $image; } - if(isset($link)) { + if(trim($link) != "") { $postvars['link'] = $link; // The following doesn't work - why? @@ -1121,7 +1125,7 @@ function facebook_post_hook(&$a,&$b) { $postvars['source'] = $link; } } - if(isset($linkname)) + if(trim($linkname) != "") $postvars['name'] = $linkname; } diff --git a/privacy_image_cache/privacy_image_cache.php b/privacy_image_cache/privacy_image_cache.php index b5cfb13e6..cd8a65f8b 100644 --- a/privacy_image_cache/privacy_image_cache.php +++ b/privacy_image_cache/privacy_image_cache.php @@ -127,7 +127,7 @@ function privacy_image_cache_img_cb($matches) { if (privacy_image_cache_is_local_image($matches[2])) return $matches[1] . $matches[2] . $matches[3]; - return $matches[1] . get_app()->get_baseurl() . "/privacy_image_cache/?url=" . escape_tags(addslashes(rawurlencode($matches[2]))) . $matches[3]; + return $matches[1] . get_app()->get_baseurl() . "/privacy_image_cache/?url=" . addslashes(rawurlencode(htmlspecialchars_decode($matches[2]))) . $matches[3]; } /** diff --git a/statusnet/statusnet.php b/statusnet/statusnet.php index b3a8a1a14..b433f57b2 100755 --- a/statusnet/statusnet.php +++ b/statusnet/statusnet.php @@ -503,10 +503,14 @@ function statusnet_post_hook(&$a,&$b) { $msg = implode(' ', $e); $msg .= '... ' . $shortlink; } + + $msg = trim($msg); + // and now dent it :-) if(strlen($msg)) { $result = $dent->post('statuses/update', array('status' => $msg)); - logger('statusnet_post send, result: ' . print_r($result, true), LOGGER_DEBUG); + logger('statusnet_post send, result: ' . print_r($result, true). + "\nmessage: ".$msg, LOGGER_DEBUG."\nOriginal post: ".print_r($b)); if ($result->error) { logger('Send to StatusNet failed: "' . $result->error . '"'); } diff --git a/twitter/twitter.php b/twitter/twitter.php index 2849db968..04c1c87df 100755 --- a/twitter/twitter.php +++ b/twitter/twitter.php @@ -367,6 +367,9 @@ function twitter_post_hook(&$a,&$b) { $msg = implode(' ', $e); $msg .= '... ' . $shortlink; } + + $msg = trim($msg); + // and now tweet it :-) if(strlen($msg)) { $result = $tweet->post('statuses/update', array('status' => $msg));