Code

Updated configRegistry
[gosa.git] / gosa-core / html / autocomplete.php
index 7db6f25736b178d5b0abb932edf584c0fc38441c..8804363913ee6de1514d5a9bac14f7c4623d5d0d 100644 (file)
@@ -24,6 +24,7 @@
 @require_once ("../include/php_setup.inc");
 @require_once ("functions.inc");
 
+session_cache_limiter("private");
 session::start();
 session::global_set('errorsAlreadyPosted',array());
 
@@ -36,13 +37,29 @@ if (!session::global_is_set('ui')){
 
 /* Base completition or filter completition? */
 if (isset($_GET['type']) && $_GET['type'] == "base") {
+
+  // Find dn based on name and description
   if (session::is_set("pathMapping") && count($_POST) == 1) {
     $res= "";
     $pathMapping= session::get("pathMapping");
+    $department_info= session::get("department_info");
+
     $search= preg_replace('/"/', '"', current($_POST));
-    foreach ($pathMapping as $key => $value) {
-      if (mb_stristr($value, $search) !== false) {
-        $res.= "<li>$value</li>";
+    foreach ($department_info as $dn => $info) {
+      if (!isset($pathMapping[$dn])) {
+        continue;
+      }
+      if (mb_stristr($info['name'], $search) !== false) {
+        $res.= "<li>".mark($search, $pathMapping[$dn]).($info['description']==''?"":"<span class='informal'> [".mark($search, $info['description'])."]</span>")."</li>";
+        continue;
+      }
+      if (mb_stristr($info['description'], $search) !== false) {
+        $res.= "<li>".mark($search, $pathMapping[$dn]).($info['description']==''?"":"<span class='informal'> [".mark($search, $info['description'])."]</span>")."</li>";
+        continue;
+      }
+      if (mb_stristr($pathMapping[$dn], $search) !== false) {
+        $res.= "<li>".mark($search, $pathMapping[$dn]).($info['description']==''?"":"<span class='informal'> [".mark($search, $info['description'])."]</span>")."</li>";
+        continue;
       }
     }
 
@@ -54,8 +71,8 @@ if (isset($_GET['type']) && $_GET['type'] == "base") {
 
 } else {
 
-  $config = session::global_get('config');
   $ui = session::global_get('ui');
+  $config = session::global_get('config');
 
   /* Is there a filter object arround? */
   if (session::is_set("autocomplete")){