diff --git a/gosa-plugins/systems/admin/systems/class_serverService.inc b/gosa-plugins/systems/admin/systems/class_serverService.inc
index da80ccb8f23525ed2be53a2a5b97e6fa4b881304..4bd58ed1894d29ca7ff73227e0b95b6f0595615e 100644 (file)
/* Edit a service and make a backup from all attributes,
to be able to restore old values after aborting dialog */
if($s_action == "EditSingleService"){
- $this->backup = get_object_vars($this->plugins[$s_entry]);
- $this->dialog = $this->plugins[$s_entry];
- $this->current = $s_entry;
+ if($this->plugins[$s_entry]->acl_is_readable("")){
+ $this->backup = get_object_vars($this->plugins[$s_entry]);
+ $this->dialog = $this->plugins[$s_entry];
+ $this->current = $s_entry;
+ }
}
}
if($this->plugins[$name]->initially_was_account){
if(isset($this->plugins[$name]->krb_host_key) && $this->plugins[$name]->krb_host_key instanceof krbHostKeys){
- $this->plugins[$name]->krb_host_key->remove_from_parent_by_prefix($this->plugins[$name]->krb_host_key);
+ $this->plugins[$name]->krb_host_key->remove_from_parent_by_prefix($this->plugins[$name]->krb_service_prefix);
}
$this->plugins[$name]->remove_from_parent();
}