Proposals/Outcomes portfolio/Group changes
From Mahara Wiki
High level overview
A new group type is created that defines the editing permissions on a portfolio and access to certain other pages within a portfolio.
These are the changes in groups that can't be done via configuration.
Create the group type 'Outcomes' that becomes available when an institution uses 'Outcomes portfolio'. The following rules apply when that group type is selected:
- Based on the 'Controlled' group type, i.e. members can be added and aren't allowed to leave
- Only group admin can see the 'Add' button on the 'Portfolios' overview page. However, everybody will be able to edit regular portfolio pages.
- Nobody sees the 'Copy' button on the 'Portfolios' overview page.
- Nobody can use the 'Copy' button in the 'More options' menu to make a copy of the portfolio in their personal account at this stage because that functionality is out of scope.
- Only group admins can access the collection's 'Edit' and 'Manage outcomes' screens, but everybody can edit regular portfolio pages.
- Only group admins and group tutors can change the sharing permissions for a portfolio either directly on a page or via the 'Portfolios' overview page.
- Only allow group admins and group tutors to edit the group homepage.
- Per default, all collections created in a group with the type 'Outcomes' have 'Outcome portfolio' selected automatically in the collection settings.
- Group admins and group tutors can delete an entire portfolio or individual pages within it, but regular group members can't.
- Group members cannot change the activity information or remove the associated block from the page.
- Group tutors and admins can change the activity information but cannot remove the block itself from the page as it is placed there automatically.
- Group members cannot remove a checkpoint block from their page once it has been placed there, but they can remove evidence from the checkpoint. Group tutors and admins can remove checkpoints.
- 'Prevent removing of blocks' is automatically turned on to prevent group members from accidentally removing content blocks from the page. This setting can be changed though by anybody either temporarily or for longer. Out of scope: Tie the switch in with a particular set of roles that should be allowed to change the setting.
- The outcomes portfolio is not to be locked as it is more or less a rolling document. → Nothing to develop here as that is the default.
- Hide 'Group homepage' in the block 'Group portfolios'.
- Hide forums (via group_menu_items() function in interaction/forum/lib.php)
- Hide plans (via group_tabs() function in artefact/plans/lib.php)
Defaults for group settings on the group creation screen are defined in the Administration menu → Groups → Default group settings instead of hard-coding them so that the group type can be used more flexibly if needed. 'Hide' means that the functionality is also not available when you know the URL.
Why is a group used?
- Both learners and staff can edit portfolios collaboratively. Permissions don't need to be changed as they would if we were to create portfolios in the personal portfolio area.
- Site admin can create groups in bulk via CSV and add group members via CSV, including their roles in bulk, which makes the creation of the groups and updating the group membership efficient without needing to enter every single group.
- Groups can have three roles: member, tutor, and administrator, which we can use to allow certain functionalities for the three different groups of people that need access to an outcome portfolio.
- Basic group settings can be predefined and group homepage set up as a template.
- All outcome portfolios for a group member can be held in the same group to easily see what the group member had been working on before, i.e. there is one group per learner and their support staff.
What is displayed on the group homepage can be set in the template in the site administration.
Defaults for group settings on the group creation screen are defined in the Administration menu → Groups → Default group settings instead of hard-coding them so that the group type can be used more flexibly if needed.