Group collection notifications are sent per page
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
High
|
Doris Tam | ||
21.10 |
Fix Released
|
High
|
Unassigned | ||
22.04 |
Fix Released
|
High
|
Doris Tam |
Bug Description
When a collection is shared with a group, the members of the group are receiving a notification per page access. They should be getting a single notification for the entire collection.
The number of notifications sent is related to the activity_queue table rows for that type and collection. For a personal portfolio, the rows are written when the pages are added to the collection on collection/
Steps to test:
1. Log in as admin to a site with at least a few other accounts
2. Create a group (can be 'controlled' membership) and add some other accounts
3. Create a group page, then another and then add them to a collection
4. Set the access to all members of the group and save
5. Run the cron and receive the notifications
Expected results:
All members of the group receive one notification to the collection
Actual results:
All members receive notifications based on the pages within the collection.
no longer affects: | mahara/20.10 |
no longer affects: | mahara/20.04 |
no longer affects: | mahara/21.04 |
Changed in mahara: | |
status: | New → Confirmed |
importance: | Undecided → High |
milestone: | none → 21.10.0 |
Changed in mahara: | |
status: | Confirmed → In Progress |
Changed in mahara: | |
assignee: | nobody → Doris Tam (doristam) |
Changed in mahara: | |
milestone: | 21.10.0 → 22.04.0 |
Group notifications are sent per page...
• No, when a collection is shared with a group. One notification is sent to all members of the group.
• No, when a collection is shared by a group. One notification is sent to all members of the group.
• Yes, when a collection is copied into a group.
• Yes, when a group collection is auto-created through creating a plan based off a template plan that comes with an assigned task page. The assigned page is copied and a collection is created for it.
Replicate steps to get notification for each view when a collection is copied into a group:
1. Create a group.
2. Create and add a member to the group.
3. Create a personal collection with two pages saved with these settings: Allow copying (Yes).
4. Copy the personal collection into the group.
Instructions for when a collection is auto-created through using a personal plan attached to to a task page as a template for group plans: the collection pages are not connected to the original collection.
1. Create a collection with three pages.
2. Create an independent page.
3. Create a group and add five members.
4. Create a personal plan with these settings:
1. Assignment tasks (Yes).
2. Template (Yes).
5. Create a task for the plan with these settings:
1. Select your independent page to be the ‘Task page’.
2. Select your three-page collection to be the ‘Assignment portfolio’.
6. In your group, create a new plan from your personal plan template.
7. Check that once the template is applied, ‘Assignment tasks’ setting is ‘Yes’.
8. Press save.
9. Run the cron to update the time for the next run.
Expected for copy: Each group member receives one notification per collection copied into the group.
Expected for plan template: Each group member receives one notification for the new group plan’s task’s ‘Assignment portfolio’.
Actual: for both cases, a notification is sent for each view.
It seems like both these cases are going through a similar case and solving one may solve the other.