Code

Fixed post scripts
[gosa.git] / gosa-core / include / class_config.inc
index 2b97322a69201a1ddd57eaeb527dc309d720ebc3..3fc3650832165115ee4a83e6192e2c4538166521 100644 (file)
@@ -221,8 +221,8 @@ class config  {
     /* Check for connection */
     if (is_null($this->ldap) || (is_int($this->ldap) && $this->ldap == 0)){
       $smarty= get_smarty();
-      msg_dialog::display(_("LDAP error"), _("Can't bind to LDAP. Please contact the system administrator."), ERROR_DIALOG);
-      display_error_page();
+      msg_dialog::display(_("LDAP error"), _("Cannot bind to LDAP. Please contact the system administrator."), FATAL_ERROR_DIALOG);
+      exit();
     }
 
     if (!session::is_set('size_limit')){
@@ -553,8 +553,8 @@ class config  {
       /* If no samba servers are found, look for configured sid/ridbase */
       if (count($this->data['SERVERS']['SAMBA']) == 0){
         if (!isset($this->current["SID"]) || !isset($this->current["RIDBASE"])){
-          msg_dialog::display(_("Configuration error"), _("SID and/or RIDBASE missing in the configuration!"), ERROR_DIALOG);
-          display_error_page();
+          msg_dialog::display(_("Configuration error"), _("SID and/or RIDBASE missing in the configuration!"), FATAL_ERROR_DIALOG);
+          exit();
         } else {
           $this->data['SERVERS']['SAMBA']['DEFAULT']= array(
               "SID" => $this->current["SID"],
@@ -720,50 +720,45 @@ class config  {
    */
   function getShareList($listboxEntry = false)
   {
-    $ldap= $this->get_ldap_link();
-    $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")){
+    $tmp = get_sub_list("(&(objectClass=goShareServer)(goExportEntry=*))","",get_ou("serverou"),
+        $this->current['BASE'],array("goExportEntry","cn"), GL_NONE);
+    $return =array();
+    foreach($tmp as $entry){
 
-        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];
-            }
+      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()
   {
     global $config;
     $return = array();
-    $ui = get_userinfo();
     $base = $config->current['BASE'];
+    $res= get_sub_list("(&(objectClass=goShareServer)(goExportEntry=*))", "server",
+          get_ou("serverou"), $base,array("goExportEntry","cn"),GL_NONE);
 
-    $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'])){
           unset($entry['goExportEntry']['count']);
         }
@@ -772,11 +767,11 @@ class config  {
           $sharename = $a_share[0];
           $return[$entry['cn'][0]."|".$sharename] = $entry['cn'][0]." [".$sharename."]";
         }
-      }
     }
     return($return);
   }
 
+
   /* Check if there's the specified bool value set in the configuration */
   function boolValueIsTrue($section, $value)
   {