Code

Updated pst handling
[gosa.git] / gosa-core / include / class_config.inc
index c0ceb969c5955d5ef976326ccbcf0b4739104b2d..17b860c58386189fc00acba33f58227ca1acbe9d 100644 (file)
@@ -64,6 +64,8 @@ class config  {
   var $filename = "";
   var $last_modified = 0;
 
+    private $jsonRPChandle = NULL; 
+
   public $configRegistry = NULL;
 
   /*! \brief Class constructor of the config class
@@ -251,6 +253,10 @@ class config  {
                   $this->data['PATHMENU']= array(); ;
                   break;
 
+      case 'SHORTCUTMENU':
+                  $this->data['SHORTCUTMENU']= array(); ;
+                  break;
+
                   /* Inser plugins */
       case 'PLUGIN':
                   if ($this->tags[$this->level-3] == 'MENU' &&
@@ -261,6 +267,9 @@ class config  {
                   if ($this->tags[$this->level-2] == 'PATHMENU'){
                     $this->data['PATHMENU'][$this->gpc++]= $attrs;
                   }
+                  if ($this->tags[$this->level-2] == 'SHORTCUTMENU'){
+                    $this->data['SHORTCUTMENU'][$this->gpc++]= $attrs;
+                  }
                   if ($this->tags[$this->level-2] == 'SERVICEMENU'){
                     $this->data['SERVICE'][$attrs['CLASS']]= $attrs;
                   }
@@ -295,6 +304,16 @@ class config  {
   }
 
 
+  function getRpcHandle()
+  {
+      // Create jsonRPC handle on demand.
+      if(!$this->jsonRPChandle){
+          $this->jsonRPChandle = new jsonRPC($this);
+      }
+      return($this->jsonRPChandle);
+  }
+    
+
   /*! \brief Get a LDAP link object
    *
    * This function can be used to get an ldap object, which in turn can
@@ -1046,7 +1065,11 @@ class config  {
     }
 
     // Show a warning in the syslog if there is an undefined property requested.
-    syslog(1,"Unconfigured property: {$class}::{$name}");    
+    if($this->configRegistry->propertyInitializationComplete() && 
+            "{$class}::{$name}" != 'core::config' &&  // <--- This on is never set, only in gosa.conf. 
+            "{$class}::{$name}" != 'core::logging'){  // <--- This one may cause endless recursions in class_log.inc
+        new log("debug","","Unconfigured property: '{$class}::{$name}'",array(),'');
+    }
 
     // Try to find the property in the config file directly.
     $name= strtoupper($name);