Skip to content
Camille Masset edited this page May 9, 2016 · 2 revisions

Groups

General facts

The model Group represents a generic group of users.
A group can be public (everybody can see it) or private (only members can see it).

The permissions concerning the groups are ruled by a few parameters which are listed below. A member needs to have a perm_rank greater or equal to a parameter to perform the relative action.
For more information about memberships, see the related page.

Relations between groups

A cluster can acknowledge another group as one of its subgroups. This is interesting when an association group wants to be recognised as an association in a school for instance. When this is the case, cluster's admins have also admin priviledges on the subgroup.

Proper fields

  • name (string)
  • private (boolean, default: False)
  • description (string)
  • protected (boolean, default: False): if True, the Group cannot be deleted
  • resp_group (model Group): group responsible of the group in case of admin conflict (can be null)
  • default_member_rank (integer, default: -1): the permission a member has upon joining (-1 = no one can join the group, > 0 = anyone can join)
  • req_rank_invite (integer, default: 1): rank to invite new members on the group
  • req_rank_kick (integer, default: ADMINISTRATOR_RANK): rank to remove a member from the group
  • req_rank_accept_join_requests (integer, default: 1): rank to upgrade someone rank 0 to rank 1
  • req_rank_promote (integer, default: ADMINISTRATOR_RANK): rank to upgrade other users (up to $yourRank)
  • req_rank_demote (integer, default: ADMINISTRATOR_RANK): rank to downgrade someone (to rank 1 minimum)
  • req_rank_modify_group_infos (integer, default: ADMINISTRATOR_RANK): rank to modify group description

Relation fields

  • invited_users (list of models User)
  • memberships (list of models GroupMember)
  • users (list of models User)
  • fields (list of models GroupField)

Permissions

Everybody can create a group, but it will not be recognised by default by a certified entity like a school.
This acknowledgment requires to have some privileges in the "parent" group.