From: fiedorow <fiedorow> Date: Fri, 31 Dec 2004 15:23:50 +0000 (+0000) Subject: Fix for bug #2323 - forum search problem X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=9ccdcd97eeb41e8021fd5d66e1d9461a4e3598e1;p=moodle.git Fix for bug #2323 - forum search problem --- diff --git a/lib/weblib.php b/lib/weblib.php index 0aa34c343a..f5a56c2387 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -1394,7 +1394,7 @@ function highlight($needle, $haystack, $case=0, return $haystack; } - $list_of_words = eregi_replace("[^-a-zA-Z0-9&']", " ", $needle); + $list_of_words = eregi_replace("[^-a-zA-Z0-9&.']", " ", $needle); $list_array = explode(' ', $list_of_words); for ($i=0; $i<sizeof($list_array); $i++) { if (strlen($list_array[$i]) == 1) { @@ -1419,12 +1419,18 @@ function highlight($needle, $haystack, $case=0, if ($list_of_words_cp{strlen($list_of_words_cp)-1}=='|') { $list_of_words_cp{strlen($list_of_words_cp)-1}=''; } - $list_of_words_cp = '('. trim($list_of_words_cp) .')'; - if (!$case){ - $haystack = eregi_replace($list_of_words_cp, $left_string ."\\1". $right_string, $haystack); - } else { - $haystack = ereg_replace($list_of_words_cp, $left_string ."\\1". $right_string, $haystack); + $list_of_words_cp = trim($list_of_words_cp); + + if ($list_of_words_cp) { + + $list_of_words_cp = "(". $list_of_words_cp .")"; + + if (!$case){ + $haystack = eregi_replace("$list_of_words_cp", "$left_string"."\\1"."$right_string", $haystack); + } else { + $haystack = ereg_replace("$list_of_words_cp", "$left_string"."\\1"."$right_string", $haystack); + } } $haystack = str_replace(array_keys($final),$final,$haystack);