X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=inline;f=include%2Fbbcode.php;h=63406689a160ba20da15a1c9c68b724c627ce43b;hb=1b2a90a10f6a2e03ae9a6a61f0c7f7b9a955327e;hp=1da9bf1d24b938de7e629e61a2b6469956b198c3;hpb=20208acb23b78d03b3845bcb2d645279ef4f3f45;p=friendica.git diff --git a/include/bbcode.php b/include/bbcode.php index 1da9bf1d24..63406689a1 100644 --- a/include/bbcode.php +++ b/include/bbcode.php @@ -42,7 +42,7 @@ function bb_attachment($Text, $plaintext = false, $tryoembed = true) { $title = $matches[1]; //$title = htmlentities($title, ENT_QUOTES, 'UTF-8', false); - $title = bbcode(html_entity_decode($title), false, false, true); + $title = bbcode(html_entity_decode($title, ENT_QUOTES, 'UTF-8'), false, false, true); $title = str_replace(array("[", "]"), array("[", "]"), $title); $image = ""; @@ -681,6 +681,8 @@ function bb_RemovePictureLinks($match) { if(is_null($text)){ $a = get_app(); + $stamp1 = microtime(true); + $ch = @curl_init($match[1]); @curl_setopt($ch, CURLOPT_NOBODY, true); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @@ -688,6 +690,8 @@ function bb_RemovePictureLinks($match) { @curl_exec($ch); $curl_info = @curl_getinfo($ch); + $a->save_timestamp($stamp1, "network"); + if (substr($curl_info["content_type"], 0, 6) == "image/") $text = "[url=".$match[1]."]".$match[1]."[/url]"; else { @@ -731,6 +735,8 @@ function bb_CleanPictureLinksSub($match) { if(is_null($text)){ $a = get_app(); + $stamp1 = microtime(true); + $ch = @curl_init($match[1]); @curl_setopt($ch, CURLOPT_NOBODY, true); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @@ -738,6 +744,8 @@ function bb_CleanPictureLinksSub($match) { @curl_exec($ch); $curl_info = @curl_getinfo($ch); + $a->save_timestamp($stamp1, "network"); + // if its a link to a picture then embed this picture if (substr($curl_info["content_type"], 0, 6) == "image/") $text = "[img]".$match[1]."[/img]"; @@ -779,8 +787,6 @@ function bb_CleanPictureLinks($text) { function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = false, $forplaintext = false) { - $stamp1 = microtime(true); - $a = get_app(); // Hide all [noparse] contained bbtags by spacefying them @@ -842,8 +848,10 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal // removing multiplicated newlines if (get_config("system", "remove_multiplicated_lines")) { - $search = array("\n\n\n", "\n ", " \n", "[/quote]\n\n", "\n[/quote]", "[/li]\n", "\n[li]", "\n[ul]", "[/ul]\n", "\n\n[share ", "[/attachment]\n"); - $replace = array("\n\n", "\n", "\n", "[/quote]\n", "[/quote]", "[/li]", "[li]", "[ul]", "[/ul]", "\n[share ", "[/attachment]"); + $search = array("\n\n\n", "\n ", " \n", "[/quote]\n\n", "\n[/quote]", "[/li]\n", "\n[li]", "\n[ul]", "[/ul]\n", "\n\n[share ", "[/attachment]\n", + "\n[h1]", "[/h1]\n", "\n[h2]", "[/h2]\n", "\n[h3]", "[/h3]\n", "\n[h4]", "[/h4]\n", "\n[h5]", "[/h5]\n", "\n[h6]", "[/h6]\n"); + $replace = array("\n\n", "\n", "\n", "[/quote]\n", "[/quote]", "[/li]", "[li]", "[ul]", "[/ul]", "\n[share ", "[/attachment]", + "[h1]", "[/h1]", "[h2]", "[/h2]", "[h3]", "[/h3]", "[h4]", "[/h4]", "[h5]", "[/h5]", "[h6]", "[/h6]"); do { $oldtext = $Text; $Text = str_replace($search, $replace, $Text); @@ -923,6 +931,14 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal $Text = preg_replace("/\[mail\]([$MAILSearchString]*)\[\/mail\]/", '$1', $Text); $Text = preg_replace("/\[mail\=([$MAILSearchString]*)\](.*?)\[\/mail\]/", '$2', $Text); + // Check for headers + $Text = preg_replace("(\[h1\](.*?)\[\/h1\])ism",'

$1

',$Text); + $Text = preg_replace("(\[h2\](.*?)\[\/h2\])ism",'

$1

',$Text); + $Text = preg_replace("(\[h3\](.*?)\[\/h3\])ism",'

$1

',$Text); + $Text = preg_replace("(\[h4\](.*?)\[\/h4\])ism",'

$1

',$Text); + $Text = preg_replace("(\[h5\](.*?)\[\/h5\])ism",'
$1
',$Text); + $Text = preg_replace("(\[h6\](.*?)\[\/h6\])ism",'
$1
',$Text); + // Check for bold text $Text = preg_replace("(\[b\](.*?)\[\/b\])ism",'$1',$Text); @@ -1103,8 +1119,8 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal 'https://www.youtube.com/watch?v=$1', $Text); if ($tryoembed) { - $Text = preg_replace_callback("/\[vimeo\](https?:\/\/player.vimeo.com\/video\/[0-9]+).*?\[\/vimeo\]/ism",'tryoembed',$Text); - $Text = preg_replace_callback("/\[vimeo\](https?:\/\/vimeo.com\/[0-9]+).*?\[\/vimeo\]/ism",'tryoembed',$Text); + $Text = preg_replace_callback("/\[vimeo\](https?:\/\/player.vimeo.com\/video\/[0-9]+).*?\[\/vimeo\]/ism",'tryoembed',$Text); + $Text = preg_replace_callback("/\[vimeo\](https?:\/\/vimeo.com\/[0-9]+).*?\[\/vimeo\]/ism",'tryoembed',$Text); } $Text = preg_replace("/\[vimeo\]https?:\/\/player.vimeo.com\/video\/([0-9]+)(.*?)\[\/vimeo\]/ism",'[vimeo]$1[/vimeo]',$Text); @@ -1118,7 +1134,6 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal // $Text = preg_replace("/\[youtube\](.*?)\[\/youtube\]/", '', $Text); - // oembed tag $Text = oembed_bbcode2html($Text); @@ -1190,8 +1205,6 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal call_hooks('bbcode',$Text); - $a->save_timestamp($stamp1, "parser"); - return trim($Text); } ?>