Code

Added check to prevent overwriting existing sub entries of fai object
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 21 Jun 2007 08:50:36 +0000 (08:50 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 21 Jun 2007 08:50:36 +0000 (08:50 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/branches/2.5@6645 594d385d-05f5-0310-b6e9-bd551577e9d8

plugins/admin/fai/class_faiHookEntry.inc
plugins/admin/fai/class_faiScript.inc
plugins/admin/fai/class_faiScriptEntry.inc
plugins/admin/fai/class_faiTemplate.inc
plugins/admin/fai/class_faiTemplateEntry.inc
plugins/admin/fai/class_faiVariable.inc
plugins/admin/fai/class_faiVariableEntry.inc

index 415a1cb4510089b2f235202564ccc9b6a7a61173..469f17c6d0e36f76ded3fa3b134b0985d238afaf 100644 (file)
@@ -17,7 +17,7 @@ class faiHookEntry extends plugin
   var $FAIscript     = "";
   var $description   = "";
   var $status        = "new";
-
+  var $parent        = NULL;
   var $FAIstate      = "";
   
   function faiHookEntry ($config, $dn= NULL,$object=false)
@@ -134,6 +134,10 @@ class faiHookEntry extends plugin
     /* Call common method to give check the hook */
     $message= plugin::check();
 
+    if(isset($this->parent->SubObjects[$this->cn]) && $this->cn != $this->orig_cn){
+      $message[] =_("There is already a hook with the given name.");
+    }
+
     if(empty($this->FAIscript)) {
       $message[]=_("Please enter a value for script.");
     }
index 401dcde4a630b77786a677667dfc8bc8ec9fcaf9..537c35318581a4a114a813f821fa46af558921b0 100644 (file)
@@ -131,6 +131,7 @@ class faiScript extends plugin
     if(isset($_POST['AddSubObject'])){
       $this->dialog= new $this->subClassName($this->config,"new");
       $this->dialog->acl = $this->acl;
+      $this->dialog->parent = &$this;
       $this->is_dialog=true;
     }
 
index 1e44dc73421c029f2f3293bf4fd45581718c0fb9..e2379f7ef659216b023b1f668fa4bf2362bfab2a 100644 (file)
@@ -15,7 +15,7 @@ class faiScriptEntry extends plugin
   var $FAIscript     = "";
   var $description   = "";
   var $status        = "new";
-
+  var $parent        = NULL;
   var $FAIstate      = "";
   
   function faiScriptEntry ($config, $dn= NULL,$object=false)
@@ -124,6 +124,10 @@ class faiScriptEntry extends plugin
     /* Call common method to give check the hook */
     $message= plugin::check();
   
+    if(isset($this->parent->SubObjects[$this->cn]) && $this->cn != $this->orig_cn){
+      $message[] =_("There is already a script with the given name.");
+    }
+
     if(empty($this->cn)){
       $message[] = _("Please enter a name.");
     }
index dd614d3985f70de6b66fe643d672d432ce8ce60d..62dab484c23cbaceeb9c0a59f0f6925559a1acbe 100644 (file)
@@ -164,6 +164,7 @@ class faiTemplate extends plugin
     if(isset($_POST['AddSubObject'])){
       $this->dialog= new $this->subClassName($this->config,"new");
       $this->dialog->acl = $this->acl;
+      $this->dialog->parent = &$this;
       $this->is_dialog=true;
     }
 
index 2c9a4dc98d9ac967bce077be806654e983e0526f..464683952a327df2668a8346cf76ea70d1458d78 100644 (file)
@@ -20,7 +20,7 @@ class faiTemplateEntry extends plugin
   var $user          = "root";
   var $group         = "root";
   var $binary        = false;
-
+  var $parent        = NULL;
   var $FAIstate      = "";
   
   function faiTemplateEntry ($config, $dn= NULL,$object=false)
@@ -175,6 +175,10 @@ class faiTemplateEntry extends plugin
     /* Call common method to give check the hook */
     $message= plugin::check();
 
+    if(isset($this->parent->SubObjects[$this->cn]) && $this->cn != $this->orig_cn){
+      $message[] =_("There is already a template with the given name.");
+    }
+
     if(empty($this->FAItemplateFile)){
       $message[]=_("Please specify a value for attribute 'file'.");
     } 
index 35a071ef5a56ad90cf20c46ab6390b1efdceace6..171ad312d99130b3a8d5beb0ca07efbd7d3adb0f 100644 (file)
@@ -103,8 +103,9 @@ class faiVariable extends plugin
 
     /* Add new sub object */
     if(isset($_POST['AddSubObject'])){
-      $this->dialog= new $this->subClassName($this->config,"new");
-      $this->dialog->acl = $this->acl;
+      $this->dialog         = new $this->subClassName($this->config,"new");
+      $this->dialog->acl    = $this->acl;
+      $this->dialog->parent = $this;
       $this->is_dialog=true;
     }
 
@@ -119,6 +120,7 @@ class faiVariable extends plugin
       $var = $_POST['SubObject'][0];
       $this->dialog= new $this->subClassName($this->config,$this->dn,$this->SubObjects[$var]);
       $this->dialog->acl = $this->acl;
+      $this->dialog->parent = $this;
       $_SESSION['objectinfo'] = $this->SubObjects[$var]['dn'];
       $this->is_dialog=true;
     }
index e543ff23c8673509ebb3f4ff1263104d4ed0f5a2..b5814a0e8b1c47509af3262ee6c11d8decc3fa52 100644 (file)
@@ -13,7 +13,7 @@ class faiVariableEntry extends plugin
   var $FAIvariableContent   = "";
   var $description   = "";
   var $status        = "new";
-
+  var $parent        = NULL;
   var $FAIstate      = "";
   
   function faiVariableEntry ($config, $dn= NULL,$object=false)
@@ -88,6 +88,10 @@ class faiVariableEntry extends plugin
   {
     /* Call common method to give check the hook */
     $message= plugin::check();
+
+    if(isset($this->parent->SubObjects[$this->cn]) && $this->cn != $this->orig_cn){
+      $message[] =_("There is already a variable with the given name.");
+    }
     
     if(empty($this->FAIvariableContent)) {
       $message[]=_("Please specify a value for the attribute 'content'.");