public function addOrEditGroup()
{
if ($this->user["group"] != "admin") {
return false;
}
if ($name = $this->app->param("name", false)) {
if ($name != "admin") {
$groups = $this->app->db->getKey("cockpit/settings", "cockpit.acl.groups", []);
if ($oldname = $this->app->param("oldname", false)) {
if (isset($groups[$oldname]) && $oldname != "admin") {
$rights = $this->app->db->getKey("cockpit/settings", "cockpit.acl.rights", []);
if (isset($rights[$oldname])) {
$rights[$name] = $rights[$oldname];
unset($rights[$oldname]);
$this->app->db->setKey("cockpit/settings", "cockpit.acl.rights", $rights);
}
$this->app->db->update("cockpit/accounts", ["group" => $oldname], ["group" => $name]);
unset($groups[$oldname]);
}
}
$groups[$name] = false;
$this->app->db->setKey("cockpit/settings", "cockpit.acl.groups", $groups);
}
}
$acl = $this->getAcl();
return json_encode($acl);
}