Code

Only do time intensive things if needed
authorcajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 5 Jan 2010 15:37:27 +0000 (15:37 +0000)
committercajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 5 Jan 2010 15:37:27 +0000 (15:37 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@15059 594d385d-05f5-0310-b6e9-bd551577e9d8

gosa-core/include/class_listing.inc

index 31a1b3dc19fe5156945b12f672ca85dbff13fdd5..749bc30d13c71a1863fcddd9940294f2d88c1563 100644 (file)
@@ -704,41 +704,44 @@ class listing {
         // Row is replaced by the row number
         if ($param == "row") {
           $params[]= $row;
+          continue;
         }
 
         // pid is replaced by the current PID
         if ($param == "pid") {
           $params[]= $this->pid;
+          continue;
         }
 
         // base is replaced by the current base
         if ($param == "base") {
           $params[]= $this->getBase();
+          continue;
         }
 
         // Fixie with "" is passed directly
         if (preg_match('/^".*"$/', $param)){
           $params[]= preg_replace('/"/', '', $param);
+          continue;
+        }
+
+        // Move dn if needed
+        if ($param == "dn") {
+          $params[]= LDAP::fix($config["dn"]);
+          continue;
         }
 
         // LDAP variables get replaced by their objects
         for ($i= 0; $i<$config['count']; $i++) {
-          if ($config[$i] == 'dn') {
-            continue;
-          }
           if ($param == $config[$i]) {
             $values= $config[$config[$i]];
             if (is_array($values)){
               unset($values['count']);
             }
             $params[]= $values;
+            break;
           }
         }
-
-        // Move dn if needed
-        if ($param == "dn") {
-          $params[]= LDAP::fix($config["dn"]);
-        }
       }
 
       // Replace information