From 0d809d80dc4ac55588a8bed4658577dbab989d0c Mon Sep 17 00:00:00 2001 From: Cameron Date: Sun, 25 Jan 2015 03:10:39 -0800 Subject: [PATCH] Fix for bbcode of 'code' being parsed as shortcodes. --- e107_core/bbcodes/bb_code.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/e107_core/bbcodes/bb_code.php b/e107_core/bbcodes/bb_code.php index bf232b14c..edc839d47 100644 --- a/e107_core/bbcodes/bb_code.php +++ b/e107_core/bbcodes/bb_code.php @@ -20,6 +20,11 @@ class bb_code extends e_bb_base // $code_text = str_replace('<','<r;',$code_text); $code_text = htmlentities($code_text, ENT_QUOTES, 'utf-8'); + // $srch = array('{','}'); + // $repl = array( '{', '}'); // avoid code getting parsed as templates or shortcodes. + + // $code_text = str_replace($srch, $repl, $code_text); + return $paramet ? '[code='.$paramet.']'.$code_text.'[/code]' : '[code]'.$code_text.'[/code]'; } @@ -50,6 +55,8 @@ class bb_code extends e_bb_base $code_text = str_replace($search, $replace, $code_text); + + if(isset($pref['useGeshi']) && $pref['useGeshi'] && file_exists(e_PLUGIN."geshi/geshi.php")) { $code_md5 = md5($code_text); @@ -80,6 +87,11 @@ class bb_code extends e_bb_base $code_text = html_entity_decode($code_text, ENT_QUOTES, 'utf-8'); $code_text = trim($code_text); $code_text = htmlspecialchars($code_text, ENT_QUOTES, 'utf-8'); + + $srch = array('{','}'); + $repl = array('{', '}'); + + $code_text = str_replace($srch, $repl, $code_text); // avoid code getting parsed as templates or shortcodes. if($parm == 'inline') { @@ -92,7 +104,10 @@ class bb_code extends e_bb_base $ret = "
".$code_text."
"; } + + $ret = str_replace("[", "[", $ret); + return $ret; }