Revision 445
Added by Matthias over 18 years ago
| frontend.functions.php | ||
|---|---|---|
| 68 | 68 |
|
| 69 | 69 |
//function to highlight search results |
| 70 | 70 |
function search_highlight($foo='', $arr_string=array()) {
|
| 71 |
$last_string=""; |
|
| 71 |
require_once(WB_PATH.'/framework/functions.php'); |
|
| 72 |
require(WB_PATH.'/search/search_convert.php'); |
|
| 73 |
$foo = entities_to_umlauts($foo, 'UTF-8'); |
|
| 72 | 74 |
foreach($arr_string as $string) {
|
| 73 |
// filter meta-characters |
|
| 74 |
$string=preg_quote($string, '/'); |
|
| 75 |
if ($string!=$last_string ) {
|
|
| 76 |
$foo=preg_replace('/((>|;)[^&<]*)('.$string.')(?=[^>;]*(&|<))/iUS', '$1<span class="highlight">$3</span>',$foo);
|
|
| 77 |
$last_string=$string; |
|
| 78 |
} |
|
| 75 |
$string = strtr($string, $string_htmlspecialchars_decode); |
|
| 76 |
$string = entities_to_umlauts($string, 'UTF-8'); |
|
| 77 |
$string = preg_quote($string, '/'); |
|
| 78 |
$string = strtr($string, $string_ul_umlauts); |
|
| 79 |
$foo = preg_replace('/('.$string.')(?=[^>]*<)/iUS', '<span class="highlight">$1</span>',$foo);
|
|
| 79 | 80 |
} |
| 81 |
$foo = umlauts_to_entities($foo, 'UTF-8', 0); |
|
| 80 | 82 |
return $foo; |
| 81 |
}
|
|
| 83 |
} |
|
| 82 | 84 |
|
| 83 | 85 |
// Old menu call invokes new menu function |
| 84 | 86 |
if (!function_exists('page_menu')) {
|
| ... | ... | |
| 187 | 189 |
if($_GET['searchresult'] == 2) {
|
| 188 | 190 |
// exact match |
| 189 | 191 |
$arr_string[0] = strtr($arr_string[0], "_"," "); |
| 190 |
$arr_string[1] = strtr($arr_string[1], "_"," "); |
|
| 191 | 192 |
} |
| 192 | 193 |
ob_start(); //start output buffer |
| 193 | 194 |
require(WB_PATH.'/modules/'.$module.'/view.php'); |
Also available in: Unified diff
Optimized search and highlighting funktions