Activities: Grouptool

mod_grouptool
Maintained by Picture of AMC Academic Moodle Cooperation AMC Academic Moodle Cooperation
The grouptool module (mod/grouptool) enhances the functionality of Moodle default groups. Two of the additional features are the possibility for students to enrol themselves in groups with waiting lists, and the transfer of grades within groups.
147 sites
306 downloads
21 fans

Grouptool module

The Grouptool module (mod/grouptool) enhances the functionality of Moodle default groups. Two of the additional features are the possibility for students to enrol in groups with waiting lists on their own, and the transfer of grades within groups.

The grouptool module features the following functionalities:

  • automatic creation of groups with simultaneous enrolment of participants (optional)
    • 1-person groups
    • groups with pre-defined numbers of persons or groups
    • groups with certain pre-defined group names, consisting of [lastname], [firstname], [idnumber], [usernumber], numbers, alphabetical indexes, and pure text
  • simultaneous creation of groupings for each group created
  • self-enrolment of participants in exisiting groups:
    • activate the groups and specify their order for each grouptool instance
    • use a waiting list system with optional limitation of the number of participants
    • define the maximum number allowed per group or for all available groups 
    • allow each participant to enrol in several groups (min./max.)
  • group grades - transfer awarded grades to other group participants
    • automatically for all groups or just for some
    • select the participant from whom the grade is to be transferred

Example

Create groups and allow students to form groups of no more than five members each to work on a joint project during the semester.

Installation

Copy the module code directly to the "mod/grouptool" directory. Open the messages page in the administration area to automatically start the installation.

Admin settings

As an administrator you can set the default values instance-wide on the settings page for administrators in the grouptool module:

  • default naming scheme (text field)
  • allow self-enrolment (checkbox)
  • show group members (checkbox)
  • immediate enrolment (checkbox)
  • allow unenrolment (checkbox)
  • general default group size (text field)
  • limited group size (checkbox)
  • define different group sizes (checkbox)
  • use waiting lists (checkbox)
  • maximum number of waiting lists a participant can be on at the same time (checkbox)
  • multiple enrolments (checkbox)
  • minimum number of groups to be selected (text field)
  • maximum number of groups to be selected (text field)
  • sync behaviour:
    • when adding a group member (drop down)
    • when deleting a group member (drop down)
    • when deleting a group (drop down)

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3

Contributors

Picture of AMC Academic Moodle Cooperation
AMC Academic Moodle Cooperation (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Ricardo Caiado
    Wed, 11 May 2016, 7:15 AM
    Debug info: ERROR: syntax error at or near "name"
    LINE 2: ... SELECT grp.id id, agrp.id agrpid, MAX(grp.name) name, MAX(...
    ^

    SELECT grp.id id, agrp.id agrpid, MAX(grp.name) name, MAX(agrp.sort_order) sort_order
    FROM mdl_groups grp LEFT JOIN mdl_grouptool_agrps agrp ON agrp.groupid = grp.id
    LEFT JOIN mdl_groupings_groups ON mdl_groupings_groups.groupid = grp.id
    LEFT JOIN mdl_groupings grpgs ON mdl_groupings_groups.groupingid = grpgs.id
    WHERE agrp.grouptoolid = $1 AND agrp.active = 1
    GROUP BY grp.id, agrp.id
    ORDER BY sort_order ASC, name ASC
    [array (
    0 => '1',
    )]
    Error code: dmlreadexception
    Stack trace:

    line 443 of /lib/dml/moodle_database.php: dml_read_exception thrown
    line 244 of /lib/dml/pgsql_native_moodle_database.php: call to moodle_database->query_end()
    line 785 of /lib/dml/pgsql_native_moodle_database.php: call to pgsql_native_moodle_database->query_end()
    line 3097 of /mod/grouptool/locallib.php: call to pgsql_native_moodle_database->get_records_sql()
    line 4019 of /mod/grouptool/locallib.php: call to mod_grouptool->get_active_groups()
    line 752 of /mod/grouptool/lib.php: call to mod_grouptool->get_registration_stats()
    line 47 of /blocks/course_overview/locallib.php: call to grouptool_print_overview()
    line 75 of /blocks/course_overview/block_course_overview.php: call to block_course_overview_get_overviews()
    line 288 of /blocks/moodleblock.class.php: call to block_course_overview->get_content()
    line 230 of /blocks/moodleblock.class.php: call to block_base->formatted_contents()
    line 973 of /lib/blocklib.php: call to block_base->get_content_for_output()
    line 1025 of /lib/blocklib.php: call to block_manager->create_block_contents()
    line 476 of /lib/outputrenderers.php: call to block_manager->ensure_content_created()
    line 39 of /theme/bootstrapbase/renderers/core_renderer.php: call to core_renderer->standard_head_html()
    line 47 of /theme/pioneer/layout/frontpage.php: call to theme_bootstrapbase_core_renderer->standard_head_html()
    line 1018 of /lib/outputrenderers.php: call to include()
    line 948 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
    line 164 of /my/index.php: call to core_renderer->header()

    #############

    mod_grouptool (an add-on) is not quite coded directly.

    The SQL should be:

    SELECT grp.id id, agrp.id agrpid, MAX(grp.name) AS name, MAX(agrp.sort_order) AS sort_order

    FROM mdl_groups grp LEFT JOIN mdl_grouptool_agrps agrp ON agrp.groupid = grp.id
    LEFT JOIN mdl_groupings_groups ON mdl_groupings_groups.groupid = grp.id
    LEFT JOIN mdl_groupings grpgs ON mdl_groupings_groups.groupingid = grpgs.id
    WHERE agrp.grouptoolid = ? AND agrp.active = 1
    GROUP BY grp.id, agrp.id
    ORDER BY sort_order ASC, name ASC

    See point 12 here: https://docs.moodle.org/dev/Database


    ---------------------------------------------

    https://github.com/academic-moodle-cooperation/moodle-mod_grouptool/issues/7
  • Picture of AMC Academic Moodle Cooperation
    Wed, 8 Jun 2016, 3:52 PM
    We just published a version of the Grouptool Plugin for Moodle 3.0 – have fun.
  • Picture of AMC Academic Moodle Cooperation
    Tue, 23 Aug 2016, 8:27 PM
    We just published a version of the Grouptool Plugin for Moodle 3.1 – have fun.
  • Picture of AMC Academic Moodle Cooperation
    Tue, 22 Nov 2016, 5:33 PM
    We just published a bug fix release 3.1.1 of the Grouptool plugin (users not being promoted from queue after others unregistered).
  • Ricardo Caiado
    Wed, 7 Dec 2016, 8:12 PM
    Any upgrade to Moodle 3.2?
  • Ricardo Caiado
    Wed, 7 Dec 2016, 8:12 PM
    Any upgrade to Moodle 3.2?
  • Picture of Philipp Hager
    Fri, 6 Jan 2017, 5:54 PM
    @Ricardo Caiado: sorry for not answering you for so long (I forgot to subscribe to the comments): The Moodle 3.2 upgrade is currently still on it's way. From development point of view it's looking good and we're introducing some additional features, but won't release a new version until our testing team has finished QA testing! If you want to test it also, or follow the current development process, we're having the master branch - which represents currently the development for 3.2 on github: https://github.com/academic-moodle-cooperation/moodle-mod_grouptool
    But please be aware that the master branch is subject to possible rebases/resets in the current state of our development process.
  • Picture of AMC Academic Moodle Cooperation
    Wed, 15 Feb 2017, 9:16 PM
    We just published a version of the Grouptool plugin for Moodle 3.2 – have fun.
  • Picture of AMC Academic Moodle Cooperation
    Mon, 14 Aug 2017, 12:58 PM
    We just published a version of the Grouptool plugin for Moodle 3.3 – have fun.
  • Picture of AMC Academic Moodle Cooperation
    Thu, 17 Aug 2017, 10:30 PM
    We just published version 3.3.1 of the Grouptool fixing a bug in the update script (failing CLI upgrades due to non-disabled capability checks when updating calendar events).
  • Picture of Madhu Avasarala
    Fri, 29 Sep 2017, 2:36 PM
    Hello, Thanks for a wonderful plugin! Providing this to the Moodle community is laudable. A question about naming of groups during Auto creation: If I use [lastname] # it takes the first 3 characters of the student's lastname only. This is difficult to recognize. Can this be increased to at least 5 or even better use the full first name of the student? Thanks.
  • Picture of Philipp Hager
    Fri, 29 Sep 2017, 3:06 PM
    Hi, we set this value due to Group names getting too long in our instances otherwise. But it might be a good idea to have the length customiseable - would you mind creating a feature request on our github-repository (https://github.com/academic-moodle-cooperation/moodle-mod_grouptool/issues/)?
    And if you need the changes right now and are familiar with PHP or have at least access to the Moodle's source code, you can replace line 254 of "YOURMOODLEDIR"/mod/grouptool/locallib.php with
    $data[$key] .= substr($member->$tag, 0, 5);
    (Attention: The line number is only valid for the Version v3.3.1 and may differ in other versions!)
  • Picture of AMC Academic Moodle Cooperation
    Wed, 18 Oct 2017, 3:07 PM
    We just published version 3.3.2 of the Grouptool plugin for Moodle 3.3 fixing various small bugs (see CHANGELOG.txt).
  • Picture of John Anderson
    Thu, 9 Nov 2017, 11:44 PM
    Hi, trying to parse a few features in the description :

    "immediate enrolment (checkbox)" - are you talking about enrolling into a group, becoming a member to group? I'm confused by your use of 'enrollment' here. Thanks
  • Picture of Philipp Hager
    Fri, 10 Nov 2017, 6:30 PM
    Hi John,

    with the "immediate enrolemnt" checkbox we talk about enrolling into a group (yes, becoming a member of the Moodle group). Wording in mod_grouptool is a little bit tough due to us having a second layer over the Moodle groups.
    Each Moodle group is represented in mod_grouptool and we can register students either in mod_grouptool only - until a teacher transfers the (de)registrations to Moodle itself, or we have the registrations transparent and immediatly also done in Moodle's groups. The mentioned checkbox ensures that every (de)registration in mod_grouptool is immediately done in Moodle's corresponding group too. If it isn't activated the teacher has to press a button to have the current status of mod_grouptool's group registrations transfered to Moodle's groups.

    I hope I could clarify the setting and just ask further if there are any questions!

    cheers,
    Philipp
1 2
Please login to post comments