This wiki is archived and useful information is being migrated to the main bzflag.org website

Group Management System

From BZFlagWiki
Revision as of 17:59, 12 April 2007 by JeffM2501 (Talk | contribs) (they are user groups not sub groups)

Jump to: navigation, search
Picture Frame.png This page contains the design document for an enhancement or feature. It is a work of collaborative development, and may not represent the final design. If you are not part of the development or design group, please post comments and suggestions on the talk page and not in the middle of the design.


A need exists to let users manage there own user groups. At present a forum administrator is needed to add or modify groups. This is not optimal.

Overview

A web system needs to be made that allows a user to register an "organization" and manage a number of user groups tied to that organization.

Concepts

  • Organization: organizations are unique name spaces that are registered by a single user. The contain a number of user groups. An organization may be a game server, a group or network of servers, or a league.
  • User Group: user groups contain a list of users that are members in the group, they are managed by a group moderator.
  • Owner Group: a user group that is automatically created for each organization and can manage and create all user groups in the organization.

Implementation

This describes a desired implementation.

Web Interface

A web page system should be created that allows users to create and manage organizations. Organization must have unique names. If an organization name exists at creation time, the user requesting the new organization should be notified that the name is unavailable. A user should not be able to create an organization that has the same name as any user other than himself. Organizations must keep a link to their creator account, so that we have a contact e-mail for the organization. On creation the organization will create a owner group and add the creating user to that group. The owner group can fully administer the organization.

Organization administrator can create any number of user groups. User group names need to only be unique in the organization they belong to. User groups can have any number of members, pulled from the BZFlag user database. The group membership should store the BZID of the user to allow for name changes. Administrators should be able to create, destroy, and rename user groups.

Local Server Setup

All groups from the local server will be handled in the format of OrganizationName.UserGroupName. This will fit our current naming convention.

List Server

The list server will parse the organization and user group names out of the group requests, and process them as it does now, pulling data from the new system.

System Administration

A reserved organization should have global administration permisions, to manage all organizations and user groups if needed

Reserved Names

  • BZFlag: this organization is for global management of the system.
  • Developers: this organizations is for developers.
  • Local: this organization is reserved for local server groups and should not exist.

Conversion From phpbb Groups

The existing user groups on BZBB are already mostly in the SERVER.GROUP format. We should be able to convert each server into an organization and assign it an owner. The few groups that are left over should be able to be manually ported to the new system. Since the names of most groups will not change, game servers will still work with the new system.