if(intval($tmbl_post) == 1) {
$tmbl_defpost = get_pconfig(local_user(),'tumblr','post_by_default');
$selected = ((intval($tmbl_defpost) == 1) ? ' checked="checked" ' : '');
- $b .= '<div class="profile-jot-net"><input type="checkbox" name="tumblr_enable"' . $selected . 'value="1" /> '
+ $b .= '<div class="profile-jot-net"><input type="checkbox" name="tumblr_enable"' . $selected . ' value="1" /> '
. t('Post to Tumblr') . '</div>';
}
}
}
}
if(count($tag_arr))
- $tags = implode(',',$tag_arr);
+ $tags = implode(',',$tag_arr);
+ $link = "";
+ $video = false;
+
+ // Checking for a bookmark
+ if(preg_match("/\[bookmark\=([^\]]*)\](.*?)\[\/bookmark\]/is",$b['body'],$matches)) {
+ $link = $matches[1];
+ if ($b['title'] == '')
+ $b['title'] = html_entity_decode($matches[2],ENT_QUOTES,'UTF-8');
+
+ $body = $b['body'];
+ // splitting the text in two parts:
+ // before and after the bookmark
+ $pos = strpos($body, "[bookmark");
+ $body1 = substr($body, 0, $pos);
+ $body2 = substr($body, $pos);
+
+ // Removing the bookmark
+ $body2 = preg_replace("/\[bookmark\=([^\]]*)\](.*?)\[\/bookmark\]/ism",'',$body2);
+ $body = $body1.$body2;
+
+ $video = ((stristr($link,'youtube')) || (stristr($link,'youtu.be')) || (stristr($mtch[1],'vimeo')));
+ }
$params = array(
'email' => $tmbl_username,
'password' => $tmbl_password,
- 'title' => (($b['title']) ? $b['title'] : t('Post from Friendica')),
- 'type' => 'regular',
'format' => 'html',
'generator' => 'Friendica',
- 'tags' => $tags,
- 'body' => bbcode($b['body'])
- );
+ 'tags' => $tags);
+
+ if (($link != '') and $video) {
+ $params['type'] = "video";
+ $params['embed'] = $link;
+ if ($b['title'] != '')
+ $params['caption'] = '<h1><a href="'.$link.'">'.$b['title'].
+ "</a></h1><p>".bbcode($body)."</p>";
+ else
+ $params['caption'] = bbcode($body);
+ } else if (($link != '') and !$video) {
+ $params['type'] = "link";
+ $params['name'] = $b['title'];
+ $params['url'] = $link;
+ //$params['description'] = bbcode($body);
+ $params['description'] = bbcode($b["body"]);
+ } else {
+ $params['type'] = "regular";
+ $params['title'] = $b['title'];
+ $params['body'] = bbcode($b['body']);
+ }
$x = post_url($tmbl_blog,$params);
$ret_code = $a->get_curl_code();
elseif($ret_code == 403)
logger('tumblr_send: authentication failure');
else
- logger('tumblr_send: general error: ' . print_r($x,true));
+ logger('tumblr_send: general error: ' . print_r($x,true));
}
}