Auth\Controller\Accounts::addOrEditGroup PHP Method

addOrEditGroup() public method

public addOrEditGroup ( )
    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);
    }