twitter: When a post with a picture failes than the post is repeated without a picture
fromgplus: Under certain circumenstances "fromgplus" generates an empty post that is blocking the cron hook - so now messages are mirrored anymore.
$body = preg_replace( '/'.$recycle.'\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', "\n\t$2:\t", $body);
// share element
- $body = preg_replace_callback("/\[share(.*?)\]\s?(.*?)\s?\[\/share\]/ism","fbpost_ShareAttributes", $body);
+ //$body = preg_replace_callback("/\[share(.*?)\]\s?(.*?)\s?\[\/share\]/ism","fbpost_ShareAttributes", $body);
- $bodyparts = explode("\t", $body);
+ //$bodyparts = explode("\t", $body);
// Doesn't help with multiple repeats - the problem has to be solved later
- if (sizeof($bodyparts) == 3) {
- $html = bbcode($bodyparts[2], false, false);
- $test = trim(html2plain($html, 0, true));
-
- if (trim($bodyparts[0]) == "")
- $body = trim($bodyparts[2]);
- else if (trim($test) == "")
- $body = trim($bodyparts[0]);
- else
- $body = trim($bodyparts[0])."\n\n".trim($bodyparts[1])."[quote]".trim($bodyparts[2])."[/quote]";
- } else
+ //if (sizeof($bodyparts) == 3) {
+ // $html = bbcode($bodyparts[2], false, false);
+ // $test = trim(html2plain($html, 0, true));
+
+ // if (trim($bodyparts[0]) == "")
+ // $body = trim($bodyparts[2]);
+ // else if (trim($test) == "")
+ // $body = trim($bodyparts[0]);
+ // else
+ // $body = trim($bodyparts[0])."\n\n".trim($bodyparts[1])."[quote]".trim($bodyparts[2])."[/quote]";
+ //} else
$body = str_replace("\t", "", $body);
// At first convert the text to html
- $html = bbcode($body, false, false);
+ $html = bbcode($body, false, false, 2);
// Then convert it to plain text
$msg = trim($b['title']." \n\n".html2plain($html, 0, true));
$_REQUEST['body'] = $body;
$_REQUEST['location'] = $location;
- logger('fromgplus: posting for user '.$uid);
+ if (($_REQUEST['title'] == "") AND ($_REQUEST['body'] == "")) {
+ logger('fromgplus: empty post for user '.$uid." ".print_r($_REQUEST, true));
+ return;
+ }
require_once('mod/item.php');
//print_r($_REQUEST);
+ logger('fromgplus: posting for user '.$uid." ".print_r($_REQUEST, true));
item_post($a);
+ logger('fromgplus: done for user '.$uid);
}
function fromgplus_html2bbcode($html) {
$body = preg_replace( '/'.$recycle.'\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', "\n", $body);
// remove the share element
- $body = preg_replace("/\[share(.*?)\](.*?)\[\/share\]/ism","\n\n$2\n\n",$body);
+ //$body = preg_replace("/\[share(.*?)\](.*?)\[\/share\]/ism","\n\n$2\n\n",$body);
// At first convert the text to html
- $html = bbcode($body, false, false);
+ $html = bbcode($body, false, false, 2);
// Then convert it to plain text
//$msg = trim($b['title']." \n\n".html2plain($html, 0, true));
$body = preg_replace( '/'.$recycle.'\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', "\n", $body);
// remove the share element
- $body = preg_replace("/\[share(.*?)\](.*?)\[\/share\]/ism","\n\n$2\n\n",$body);
+ //$body = preg_replace("/\[share(.*?)\](.*?)\[\/share\]/ism","\n\n$2\n\n",$body);
// At first convert the text to html
- $html = bbcode($body, false, false);
+ $html = bbcode($body, false, false, 2);
// Then convert it to plain text
//$msg = trim($b['title']." \n\n".html2plain($html, 0, true));
$image = $msgarr["image"];
// and now tweet it :-)
- if(strlen($msg) and ($image == "")) {
- $result = $tweet->post('statuses/update', array('status' => $msg));
- logger('twitter_post send, result: ' . print_r($result, true), LOGGER_DEBUG);
- if ($result->error) {
- logger('Send to Twitter failed: "' . $result->error . '"');
- }
- } else if(strlen($msg) and ($image != "")) {
+ if(strlen($msg) and ($image != "")) {
$img_str = fetch_url($image);
$tempfile = tempnam(get_config("system","temppath"), "cache");
logger('twitter_post_with_media send, result: ' . print_r($result, true), LOGGER_DEBUG);
if ($result->error) {
logger('Send to Twitter failed: "' . $result->error . '"');
+ // Workaround: Remove the picture link so that the post can be reposted without it
+ $image = "";
}
}
+
+ if(strlen($msg) and ($image == "")) {
+ $result = $tweet->post('statuses/update', array('status' => $msg));
+ logger('twitter_post send, result: ' . print_r($result, true), LOGGER_DEBUG);
+ if ($result->error)
+ logger('Send to Twitter failed: "' . $result->error . '"');
+ }
}
}