Fixes bug MDL-8234, "New groups code & AS keyword"
[moodle-pu.git] / group / overview.txt
blobfcb2301629b470e85a71716624eeb5b24921d60e
1 Quick summary!
3 See the wiki too - 
5 http://docs.moodle.org/en/How_groups_work_in_Moodle
6 http://docs.moodle.org/en/Groups_documentation_for_module_developers
8 To install - run install.php. This create the appropriate database tables and 
9 sets some default config for using an IMS Enterprise web service (in particular 
10 the default setting is that such a web service is not called).
12 The user interface for managing groups for a course is groupsui/index.php. 
13 A grouping is just a set of groups - the idea is that you can have several 
14 groupings for a course, and then choose different groupings for different 
15 activities. 
17 Note that installing this code does not enable you to actually use the groupings 
18 with activity modules - this is coming :-)
20 configui - This contains the user interface for changing the IMS Enterprise web 
21 service config
23 db - all the functions that access the database, only used internally. There are 
24 basically six tables that this code deals with  groups_groups, 
25 groups_courses_groups,groups_groups_users, groups_groupings  
27 groupui - the user interface for managing the groups and groupings of a course. 
28 This uses Ajax so most of the code for the user interface is in the javascript 
29 files - the PHP files just send back an appropriate XML response to specific
30 POST requests. You'll probably need to know the basics of how Ajax works to 
31 understand the Javascript. 
33 lib - The main libraries for the user interface and other moodle code to user. 
34 -- basicgrouplib.php contains the basic functions for  adding users to groups, 
35 deleting groups etc.
36 -- groupinglib.php contains the basic function for groupings e.g. creating 
37 groupings, adding groups to groupings
38 -- extendedgrouplib.php contains other functions that are useful and use the 
39 basic group and grouping functions
40 -- lib.php is just there to let you include all the libraries more easily
41 -- utillib.php contains functions that are handy but don't use any of the group 
42 or grouping library function e.g. 
43 things like getting the names of users 
44 -- configlib.php - Contains wrapper functions for getting and setting config
46 unittests - This directory needs a bit of sorting out, and I've just discovered 
47 that I've broken one of the main 
48 tests...
51 strings.php - This is stuff that will need to go in the language files - it's 
52 here for convenience while I'm doing the
53 development.