Code

Udpated entries own ACL detection.
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 29 May 2007 14:12:55 +0000 (14:12 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 29 May 2007 14:12:55 +0000 (14:12 +0000)
Need to be reviewed.

git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@6508 594d385d-05f5-0310-b6e9-bd551577e9d8

include/class_acl.inc

index 6e7044c7dcb4372dc0a59f9e86f7381a3e232984..999a20b9553b2a559472312b2281f442e512fb64 100644 (file)
@@ -112,10 +112,14 @@ class acl extends plugin
     /* Objects */
     $tmp= get_global('plist');
     $plist= $tmp->info;
+    $cats = array();
     if (isset($this->parent) && $this->parent != NULL){
       $oc= array();
       foreach ($this->parent->by_object as $key => $obj){
         $oc= array_merge($oc, $obj->objectclasses);
+        if(isset($obj->acl_category)){
+          $cats[preg_replace("/\//","",$obj->acl_category)] = preg_replace("/\//","",$obj->acl_category);
+        }
       }
       if (in_array_ics('organizationalUnit', $oc)){
         $this->isContainer= TRUE;
@@ -124,7 +128,6 @@ class acl extends plugin
       $oc=  $this->attrs['objectClass'];
     }
 
-
     /* Extract available categories from plugin info list */
     foreach ($plist as $class => $acls){
 
@@ -140,6 +143,10 @@ class acl extends plugin
               $this->ocMapping[$data]= array();
               $this->ocMapping[$data][]= '0';
             }
+
+            if(isset($cats[$data])){
+              $this->myAclObjects[$idx.'/'.$class]= $acls['plDescription'];
+            }
             $this->ocMapping[$data][]= $class;
           } else {
             if (!isset($this->ocMapping[$idx])){