SimpleServer/SimpleServer — Issue #225: Multiple Groups
Author: kevinpeno
Created: 2012-01-20 19:41:36+00:00
State: open

I'd like to suggest the ability to have multiple groups. Since all permissions in the current system are deny unless assigned, it also makes inheritance possible and organic.

The primary use case I have so far is that I want moderators and admins to be able to talk in one channel (moderator group chat) while also maintaining their own groups (and group chat channel). I've had to set everyone in the moderator group and manually assign names to permissions I'd give admins (or myself as owner) to commands. It is quite tedious. If I could assign admins to the moderator group as well, then this would be far easier to manage.

Because having multiple groups could become quite complex, I think it would be necessary to expand the `/setgroup` command to a `/group` command that allows the ability to set, unset, list the groups that a user is in, and list who is in a named group. I also think it would be a good idea to use group/name as the identifier (case insensitive) instead of numbers to resolve what group is what.

**Example usage of new `/group` command:**

* List groups `/group list`
* Add a username to a group `/group add ` -> `/group admin add kevinpeno`
* Remove a username from a group `/group remove ` -> `/group admin remove kevinpeno`
* List members of a group `/group members` -> `/group admin members`