Code

Fixed problem with non set config objects
authorcajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 25 Jul 2008 07:01:29 +0000 (07:01 +0000)
committercajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 25 Jul 2008 07:01:29 +0000 (07:01 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@12038 594d385d-05f5-0310-b6e9-bd551577e9d8

gosa-core/include/class_plugin.inc
gosa-core/include/functions.inc

index b5952180d6d8fbf0d3555aee3b7d47182a55467a..8c8ca1dcaed1533ea654cbc96228191d6e7ceb3a 100644 (file)
@@ -180,7 +180,7 @@ class plugin
       /* Set the template flag according to the existence of objectClass
          gosaUserTemplate */
       if (isset($this->attrs['objectClass'])){
-        if (in_array ("gosaUserTemplate", $this->attrs['objectClass'])){
+        if (in_array_ics ("gosaUserTemplate", $this->attrs['objectClass'])){
           $this->is_template= TRUE;
           @DEBUG (DEBUG_TRACE, __LINE__, __FUNCTION__, __FILE__,
               "found", "Template check");
@@ -273,7 +273,7 @@ class plugin
     /* Remove objectClasses from entry */
     $ldap->cd($this->dn);
     $this->attrs= array();
-    $this->attrs['objectClass']= array_remove_entries($this->objectclasses,$oc);
+    $this->attrs['objectClass']= array_remove_entries_ics($this->objectclasses,$oc);
 
     /* Unset attributes from entry */
     foreach ($this->attributes as $val){
index 4354fdaea3094d60b6bf72a55b31b7e24029ee0c..b8825130b367665e1494fc5f2d29e33656ddb905 100644 (file)
@@ -231,7 +231,11 @@ function get_template_path($filename= '', $plugin= FALSE, $path= "")
   global $config, $BASE_DIR;
 
   /* Set theme */
-  $theme= $config->get_cfg_value("theme", "default");
+  if (isset ($config)){
+       $theme= $config->get_cfg_value("theme", "default");
+  } else {
+       $theme= "default";
+  }
 
   /* Return path for empty filename */
   if ($filename == ''){
@@ -289,6 +293,21 @@ function array_remove_entries($needles, $haystack)
 }
 
 
+function array_remove_entries_ics($needles, $haystack)
+{
+  $tmp= array();
+
+  /* Loop through entries to be removed */
+  foreach ($haystack as $entry){
+    if (!in_array_ics($entry, $needles)){
+      $tmp[]= $entry;
+    }
+  }
+
+  return ($tmp);
+}
+
+
 function gosa_array_merge($ar1,$ar2)
 {
   if(!is_array($ar1) || !is_array($ar2)){
@@ -2652,7 +2671,7 @@ function remove_objectClass($classes, &$attrs)
     $tmp= array();
     foreach ($attrs['objectClass'] as $oc) {
       foreach ($list as $class){
-        if ($oc != $class){
+        if (strtolower($oc) != strtolower($class)){
           $tmp[]= $oc;
         }
       }