Open
Description
- creation and deletion of groups
- adding and removing users from groups
- assigning a contest to a group, so that users only within that group can view the contest (for example, creator Y should not be able to see contests created by creator X, if Y does not belong to the group of X)
- proper validations and flow of assigning a contest to a group (what happens if someone wants to change that ?)
- make group a compulsory construct, each contest must be assigned to a single, or more than one group (if someone wants to make contest available to all students, then they can select a special auto-created group named all)
Plan of action
- on new org create, system shall create an group named "all"
- create new table, "contest-group", with
contestId
andgroupId
(captures foreignKey relationship between two different entities having many-to-many relationship - "All Members" group can't be deleted, its a system defined group
- handle deletion of groups. [DO later]
- POST /contest, should take an array of groupIds, and should save those entries in
contest-group
table - UI needs to show the group to which contest belong, while showing the contest in UI anywhere