index 9ba26c6496b89a5464ce9b30ffd237f0d199d7fa..8303530f7f0ab934ecd6ec2b64e6ba4c5fbc8195 100644 (file)
$ldap = $this->config->get_ldap_link();
- $ldap->cat($this->dn);
+ $ldap->cat($this->dn,array("objectClass"));
if($ldap->count()!=0){
/* Write FAIscript to ldap*/
$ldap->cd($this->dn);
$ldap->cd($this->dn);
$ldap->add($this->attrs);
}
- show_ldap_error($ldap->get_error());
+ show_ldap_error($ldap->get_error(), _("Saving FAI template base failed"));
/* Do object tagging */
$this->handle_object_tagging();
- show_ldap_error($ldap->get_error());
/* Prepare FAIscriptEntry to write it to ldap
* First sort array.
$sub_dn = "cn=".$obj['cn'].",".$this->dn;
if($obj['status']=="new"){
- $ldap->cat($sub_dn);
+ $ldap->cat($sub_dn,array("objectClass"));
if($ldap->count()){
- $obj['status']="modify";
+ $obj['status']="edited";
+ }
+ }
+
+ /* Check if gosaAdministrativeUnitTag is required as object class */
+ if($obj['status'] == "edited"){
+ $ldap->cat($sub_dn,array("objectClass"));
+ $attrs = $ldap->fetch();
+ if(isset($attrs['objectClass'])){
+ if(in_array_ics("gosaAdministrativeUnitTag",$attrs['objectClass'])){
+ $tmp['objectClass'][] = "gosaAdministrativeUnitTag";
+ }
}
}
$ldap->cd($sub_dn);
$ldap->rmdir_recursive($sub_dn);
$this->handle_post_events("remove");
+ show_ldap_error($ldap->get_error(), _("Removing FAI template base failed"));
}elseif($obj['status'] == "edited"){
$ldap->cd($sub_dn);
$this->cleanup();
$ldap->modify ($tmp);
+ show_ldap_error($ldap->get_error(), _("Saving FAI template failed"));
$this->handle_post_events("modify");
}elseif($obj['status']=="new"){
$ldap->cd($sub_dn);
$ldap->add($tmp);
$this->handle_post_events("add");
+ show_ldap_error($ldap->get_error(), _("Saving FAI template failed"));
}
- show_ldap_error($ldap->get_error());
$this->handle_object_tagging($sub_dn, $this->gosaUnitTag);
- show_ldap_error($ldap->get_error());
}
}
}