Code

Fixed getShareList
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 8 Aug 2006 03:56:25 +0000 (03:56 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 8 Aug 2006 03:56:25 +0000 (03:56 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@4418 594d385d-05f5-0310-b6e9-bd551577e9d8

include/class_config.inc

index 9657e7ca057c7f08d9269d1715bd214b21fccc45..fa068e7906351a3059c09d4fbdb991d572ec2a8b 100644 (file)
@@ -637,45 +637,47 @@ class config  {
   function getShareList($listboxEntry = false)
   {
     $ldap= $this->get_ldap_link();
-    $a_res = $ldap->search("(objectClass=goShareServer)",array("goExportEntry","cn"));
-    $return= array();
-    while($entry = $ldap->fetch($a_res)){
-      if(isset($entry['goExportEntry']['count'])){
-        unset($entry['goExportEntry']['count']);
-      }
-      if(isset($entry['goExportEntry'])){
-        foreach($entry['goExportEntry'] as $export){
-          $shareAttrs = split("\|",$export);
-          if($listboxEntry) {
-            $return[$shareAttrs[0]."|".$entry['cn'][0]] = $shareAttrs[0]." - ".$entry['cn'][0];
-          }else{
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['server']       = $entry['cn'][0];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['name']         = $shareAttrs[0];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['description']  = $shareAttrs[1];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['type']         = $shareAttrs[2];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['charset']      = $shareAttrs[3];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['path']         = $shareAttrs[4];
-            $return[$shareAttrs[0]."|".$entry['cn'][0]]['option']       = $shareAttrs[5];
+    $base =  $this->current['BASE'];
+    $res= get_list("(&(objectClass=goShareServer)(goExportEntry=*))","server",$base,array("goExportEntry","cn"),GL_SUBSEARCH);
+    $return = array();
+
+    foreach($res as $entry){
+      if(obj_is_readable($entry['dn'], "server/goShareServer","goExportEntry")){
+
+        if(isset($entry['goExportEntry']['count'])){
+          unset($entry['goExportEntry']['count']);
+        }
+        if(isset($entry['goExportEntry'])){
+          foreach($entry['goExportEntry'] as $export){
+            $shareAttrs = split("\|",$export);
+            if($listboxEntry) {
+              $return[$shareAttrs[0]."|".$entry['cn'][0]] = $shareAttrs[0]." - ".$entry['cn'][0];
+            }else{
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['server']       = $entry['cn'][0];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['name']         = $shareAttrs[0];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['description']  = $shareAttrs[1];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['type']         = $shareAttrs[2];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['charset']      = $shareAttrs[3];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['path']         = $shareAttrs[4];
+              $return[$shareAttrs[0]."|".$entry['cn'][0]]['option']       = $shareAttrs[5];
+            }
           }
         }
-      }
+      } 
     }
+
     return($return);
   }
 
   /* This function returns all available ShareServer */
-  function getShareServerList($categories = "")
+  function getShareServerList()
   {
     global $config;
     $return = array();
     $ui = get_userinfo();
     $base = $config->current['BASE'];
 
-    if(empty($categories)){
-      echo "Need to adapt share list loading<br>";
-    }
-
-    $res= get_list("(&(objectClass=goShareServer)(goExportEntry=*))", $categories, $base,array("goExportEntry","cn"),GL_SUBSEARCH);
+    $res= get_list("(&(objectClass=goShareServer)(goExportEntry=*))", "server", $base,array("goExportEntry","cn"),GL_SUBSEARCH);
     foreach($res as $entry){
       if(obj_is_readable($entry['dn'], "server/goShareServer","goExportEntry")){
         if(isset($entry['goExportEntry']['count'])){