Code

Added move / create checks
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Wed, 28 May 2008 08:54:05 +0000 (08:54 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Wed, 28 May 2008 08:54:05 +0000 (08:54 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@11063 594d385d-05f5-0310-b6e9-bd551577e9d8

gosa-core/plugins/admin/ogroups/class_ogroup.inc

index f64b00ba592f75491e998b4320dbee70fea985a0..34464dcdc3af8470b25fe2a9499554b8babfe9a9 100644 (file)
@@ -48,6 +48,8 @@ class ogroup extends plugin
   var $memberList= array();
   var $member= array();
   var $orig_dn= "";
+  var $orig_cn= "";
+  var $orig_base= "";
   var $group_dialog= FALSE;
   var $view_logged = FALSE;
 
@@ -138,6 +140,9 @@ class ogroup extends plugin
       }
     }
 
+    $this->orig_cn = $this->cn;
+    $this->orig_base = $this->base;
+
     /* Load member data */
     $this->reload();
   }
@@ -867,6 +872,14 @@ class ogroup extends plugin
       $message[]= _("You can combine two different object types at maximum, only!");
     }
 
+    /* Check if we are allowed to create or move this object 
+     */
+    if($this->dn == "new" && !$this->acl_is_createable($this->base)){
+      $message[] = msgPool::permCreate();
+    }elseif($this->cn != $this->orig_cn || $this->base != $this->orig_base && !$this->acl_is_moveable($this->base)){
+      $message[] = msgPool::permMove();
+    }
+
     return ($message);
   }