diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php index e819976a7a..8564d20e35 100644 --- a/include/bb2diaspora.php +++ b/include/bb2diaspora.php @@ -19,6 +19,11 @@ function diaspora2bb($s) { $s = Markdown($s); $s = html2bbcode($s); // $s = str_replace('*','*',$s); + + // we seem to get a lot of text smushed together with links from Diaspora. + // if it's a url that we haven't already parsed into a bbcode structure, put a space before it. + $s = preg_replace("/([^=])(https?:\/\/)/ism",'$1 $2',$s); + $s = preg_replace("/\[url\=?(.*?)\]https?:\/\/www.youtube.com\/watch\?v\=(.*?)\[\/url\]/ism",'[youtube]$2[/youtube]',$s); $s = preg_replace("/\[url\=https?:\/\/www.youtube.com\/watch\?v\=(.*?)\].*?\[\/url\]/ism",'[youtube]$1[/youtube]',$s); $s = preg_replace("/\[url\=?(.*?)\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/url\]/ism",'[vimeo]$2[/vimeo]',$s);