Groups API: Difference between revisions
From MoodleDocs
m (→Overview) |
|||
Line 1: | Line 1: | ||
==Overview== | ==Overview== | ||
The groups API is a core system in Moodle which allows for | The groups API is a core system in Moodle which allows for: | ||
*Creating and deleting of groups and groupings. | |||
*Adding and removing members to a group. | |||
*Polling of information regarding accessibility and permissions. | |||
==Database Structure== | ==Database Structure== |
Revision as of 00:54, 10 January 2012
Overview
The groups API is a core system in Moodle which allows for:
- Creating and deleting of groups and groupings.
- Adding and removing members to a group.
- Polling of information regarding accessibility and permissions.
Database Structure
There are four core tables for Groups.
groupings
A grouping is a collection of groups.
Field | Type | Info |
id | int(10) | auto increment identifier |
courseid | int(10) | The course id |
name | varchar(255) | Name of the grouping |
description | text | Description of the grouping |
descriptionformat | int(2) | The format of the description |
configdata | text | Configuration data |
timecreated | int(10) | The time that the grouping was created |
timemodified | into(10) | The time last changes were made |
groupings_groups
This table links a grouping to a group. There can be multiple groups in a grouping.
Field | Type | Info |
id | int(10) | auto increment identifier |
groupingid | int(10) | The grouping id |
groupid | int(10) | The group id |
timeadded | int(10) | Time that the group was added to the grouping |
groups
Each record represents a group.
Field | Type | Info |
id | int(10) | auto increment identifier |
courseid | int(10) | The id of the course |
name | varchar(255) | The name of the group |
description | text | A description of the group |
descriptionformat | int(2) | Format for the description |
enrolmentkey | varchar(50) | The key used when self enrolling into a course. This will automatically put the student into a specific group. |
picture | int(10) | picture for the group |
hidepicture | int(1) | Whether the group picture is displayed or hidden |
timecreated | int(10) | The time that the group was created |
timemodified | int(10) | The last time that the group details were changed |
groups_members
This table links a user to a group.
Field | Type | Info |
id | int(10) | auto increment identifier |
groupid | int(10) | The id of the group |
userid | int(10) | The user's id |
timeadded | int(10) | Time the group member was added |