Code

Fixed labeling
[gosa.git] / gosa-core / include / class_filter.inc
index 1127a246bcb89ec2bb5161441a8b1deb41fa0bd2..f44e39dcb5ec03c9cead94245d24390b19123e8b 100644 (file)
@@ -407,17 +407,17 @@ class filter {
           $e_unset= is_array($element['unset'])?"":$element['unset'];
         }
 
+        // Do not replace escaped \$ - This is required to be able to search for e.g. windows machines.
         if ($this->elementValues[$tag] == "") {
-          $e_unset= preg_replace('/([^\\\\])\$/', "\\1".normalizeLdap($this->elementValues[$tag]), $e_unset);
+          $e_unset= preg_replace('/([^\\\\])\$/', '${1}'.normalizeLdap($this->elementValues[$tag]), $e_unset);
           $e_unset= preg_replace('/\\\\\$/','$', $e_unset);
           $filter= preg_replace("/\\$$tag/", $e_unset, $filter);
         } else {
-          $e_set= preg_replace('/([^\\\\])\$/', "\\1".normalizeLdap($this->elementValues[$tag]), $e_set);
+          $e_set= preg_replace('/([^\\\\])\$/', '${1}'.normalizeLdap($this->elementValues[$tag]), $e_set);
           $e_set= preg_replace('/\\\\\$/','$', $e_set);
           $filter= preg_replace("/\\$$tag/", $e_set, $filter);
         }
       }
-      echo $filter;
 
       $result= array_merge($result, call_user_func(array($backend, 'query'), $this->base, $this->scope, $filter, $attributes, $this->category, $this->objectStorage));
     }
@@ -531,7 +531,7 @@ class filter {
 
         echo '<ul>';
         foreach ($result as $entry) {
-          echo '<li>'.$entry.'</li>';
+          echo '<li>'.mark($_POST[$tag], $entry).'</li>';
           if ($max-- == 0) {
             break;
           }