diff --git a/trunk/gosa-plugins/fai/admin/fai/class_faiPartitionTable.inc b/trunk/gosa-plugins/fai/admin/fai/class_faiPartitionTable.inc
index c8b0cdc1439f56f376be3c1fd7706b26773e2ae7..391ea168d186e2faac31c1f0779e30c6ca7fd2bd 100644 (file)
/* Read all leaf objects of this object (For FAIscript this would be FAIscriptEntry)
*/
- $res = FAI::get_all_objects_for_given_base($this->dn,"(&(objectClass=FAIclass)(objectClass=FAIpartitionDisk))");
+ $res = FAI::get_leaf_objects($this->dn, $this->cn, "FAIpartitionDisk", get_ou('faiPartitionRDN'));
foreach($res as $obj){
-
- /* Skip not relevant objects */
- if(!preg_match("/".preg_quote($this->dn, '/')."$/i",$obj['dn'])) continue;
-
$objects = array();
$objects['description'] = "";
$objects['status'] = "edited";
/* read all partitions for each disk
*/
foreach($this->disks as $name => $disk){
- $res = FAI::get_all_objects_for_given_base($disk['dn'],"(&(objectClass=FAIclass)(objectClass=FAIpartitionEntry))");
- foreach($res as $obj){
-
- /* Skip not relevant objects */
- if(!preg_match("/".preg_quote($disk['dn'], '/')."$/i",$obj['dn'])) continue;
+ $res = FAI::get_leaf_objects($disk['dn'], $name, "FAIpartitionEntry", "cn=".$this->cn.",".get_ou('faiPartitionRDN'));
+ foreach($res as $obj){
$objects = array();
$objects['status'] = "edited";
$objects['dn'] = $obj['dn'];
$message[] = msgPool::duplicated(_("Name"));
}
}
+
+ if (preg_match("/^-/", $this->cn)) {
+ $message[] = sprintf(_("The specified classname '%s' is invalid. Classnames must not start with a dash."), $this->cn);
+ }
+
+ if($this->cn != preg_replace("/ /","",trim($this->cn))){
+ $message[] = msgPool::invalid(_("Name"),preg_replace("/ /","_",$this->cn),"/[^_]/");
+ }
+
return ($message);
}
}
/* Tag object */
- $this->tag_attrs($disk_attrs, $disk_dn, $this->gosaUnitTag);
+ $ui= get_userinfo();
+ $this->tag_attrs($disk_attrs, $disk_dn, $ui->gosaUnitTag);
if($disk['status'] == "delete"){
FAI::prepare_to_save_FAI_object($disk_dn,array(),true);
}
/* Tag object */
- $this->tag_attrs($partition_attrs, $partition_dn, $this->gosaUnitTag);
+ $ui= get_userinfo();
+ $this->tag_attrs($partition_attrs, $partition_dn, $ui->gosaUnitTag);
if($partition['status'] == "delete"){
FAI::prepare_to_save_FAI_object($partition_dn,array(),true);
/* Read all leaf objects of this object (For FAIscript this would be FAIscriptEntry)
*/
- $res = FAI::get_all_objects_for_given_base($source['dn'],"(&(objectClass=FAIclass)(objectClass=FAIpartitionDisk))");
+ $res = FAI::get_leaf_objects($source['dn'], $source['cn'][0], "FAIpartitionDisk", get_ou('faiPartitionRDN'));
foreach($res as $obj){
-
- /* Skip not relevant objects */
- if(!preg_match("/".preg_quote($source['dn'], '/')."$/i",$obj['dn'])) continue;
-
$objects = array();
$objects['description'] = "";
$objects['status'] = "edited";
/* read all partitions for each disk
*/
foreach($this->disks as $name => $disk){
- $res = FAI::get_all_objects_for_given_base($disk['dn'],"(&(objectClass=FAIclass)(objectClass=FAIpartitionEntry))");
+ $res = FAI::get_leaf_objects($disk['dn'], $name, "FAIpartitionEntry", "cn=".$source['cn'][0].",".get_ou('faiPartitionRDN'));
foreach($res as $obj){
-
- /* Skip not relevant objects */
- if(!preg_match("/".preg_quote($disk['dn'], '/')."$/i",$obj['dn'])) continue;
-
$objects = array();
$objects['status'] = "edited";
$objects['dn'] = $obj['dn'];