Outcomes portfolio (3): 'Outcomes' infrastructure in the group collection

Bug #1991603 reported by Kristina Hoeppner
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mahara
Fix Released
Wishlist
Cecilia Vela Gurovic

Bug Description

Part of the outcomes portfolio blueprint: https://blueprints.launchpad.net/mahara/+spec/outcomes-portfolio

Better formatting: https://wiki.mahara.org/wiki/Proposals/Outcomes_portfolio/Outcomes_infrastructure_in_a_group_collection

## High level overview

* Create the 'Manage outcomes' page infrastructure ('Manage outcomes – group admin only' mock-up)
* Create the outcomes overview page and infrastructure
* Allow for the direct editing of fields
* Allow for the clicking of icons to complete outcomes and activities
* Create new pages (activities) from this page and set them up
* Pull in activity information from the individual pages
* Respect permissions for the different types of group members and who can edit or only see what

## Details

### Mock-up reference: 'Set up the outcomes collection - group admin only'

**Who?** As a group admin...

**What?** I want to be able to set up an outcomes collection...

**Why?** So that group tutors or I can add activities and prepare everything for the group member to get started.

The collection is set up in a group for a particular group member by a group admin. The numbered list refers to the bullets in the mock-up 'Set up the outcomes collection - group admin only'.

1. [no change] Collection name: Title of the outcomes portfolio. You can choose that freely, but might want to establish a convention to differentiate between the different plans that a group member may have.
2. Per default, the option 'Outcomes portfolio' is set to 'Yes'. This is done automatically when the institution selected to work with outcomes portfolios (see section 'Outcomes portfolio setting and database tables').
3. You can select the outcomes category from which all outcomes within the collection shall take their outcome type. If there is only one category, the category is displayed without the drop-down menu.
4. Clicking the 'Continue' button takes you to a new page where you can manage the outcomes.
Additional changes (not pictured):

5. Option 'Manage outcomes' is accessible from the collection settings screen and also on the 'Portfolios' overview page when clicking the 'More options' icon on a collection for group admins only.
6. Option 'Manage pages' is not available from the collection settings screen or via the 'More options' icon on a collection on the 'Portfolios' overview page to avoid pages from being added to or removed from the collection outside of the outcomes framework. It can also not be reached by URL.

> Out of scope: Be able to add regular portfolio pages to the collection and not only activity pages.

### Mock-up reference: 'Manage outcomes - group admin only'

**Who?** As a group admin...

**What?** I want to enter the outcomes for a group member's outcomes portfolio...

**Why?** To prepare the collaboration space for group tutors and group members.

* The Mahara collection creation process will be used.
* Outcomes are set up and modified, but interactions primarily performed by group tutors are done in 'Display' mode.
* In phase 1, we don't anticipate being able to move outcomes around but would expect that they are set up in order.
* Outcomes can be deleted.

The numbered list refers to the bullets in the mock-up 'Manage outcomes - group admin only'. Group tutors and group members do not have access to this page.

> Notes:
> * One outcome field set is set up per default as that is the minimum that is required.
> * collection_outcome table: ID, collection ID, short title, full title, outcome type ID, support (boolean), progress (text), completed (boolean), section that shows the ID from the 'collection_view' table of the 'section' there. This 'section' is needed in here in case we delete an outcome or in future want to re-order outcomes.
> * Collection_view table: create new column 'section' that in this case states the outcome ID to which the page belongs (section ID is the ID of the ID from the collection_outcome table.
> * Each outcome is its own Pieform and has its own 'Save' button that is not displayed though.

1. Outcomes are auto numbered to distinguish them. When an outcome is deleted, the number is automatically updated (on page load).
2. Short title: Short title for the outcome as that becomes the page title. Suggested: 70 character limit. This field is mandatory.
3. Full title: The full name of the outcome text. Suggested: 255 character limit.
4. Outcome type: Select list with the abbreviation of the outcome and the colour along with the full title of the type (see section 'Outcomes portfolio setting and database tables'). This can be done with a <span> in the select option.

    > If no outcome type is selected, don't display the field on the outcomes overview page.

5. Link to 'Add an outcome' (not a button).
6. Click the 'Delete' button to delete the outcome.
    * The 'Delete' button tooltip or aria text takes the short title of the outcome to know which outcome is to be deleted, e.g. Delete outcome 'Short title of the outcome'.
    * There is a confirmation modal as safeguard on deletion.
    * When an outcome has activities associatedd with it, the outcome can't be deleted because the target pages would need to be deleted first. This is stated in the modal that comes up when attempting to delete an outcome.
    * When an outcome is deleted, AJAX comes into play that updates the number for 'Outcome 1', 'Outcome 2' etc but that number is actually not saved to the database as it's not important.
    * We need to make sure that we can't delete the first outcome because there must be at least one outcome in the collection or it's not possible to add pages.

7. Click the 'Save' button to be taken to the display page of the outcomes overview page. clicking that button submits all Pieforms at once and takes you to the display page of the outcomes overview page. If you have unsaved changes, a modal comes up telling you that.

### Mock-up reference: 'Outcomes overview page in progress – group tutors and group admin'

**Who?** As a group tutor or group admin...

**What?** I want to see all outcomes and activities in one place...

**Why?** So that I have a quick overview of all the outcomes and activities for this group member to quickly note at which outcome we left off and which activity is next up.

> Note: It's a pseudo page like portfolio completion.

The numbered list refers to the bullets in the mock-up 'Outcomes overview page in progress – group tutors and group admin'.

1. [no change] Title of the outcomes portfolio that was added when the outcomes collection was created. It can be changed at any time.
2. Title of this page: Ideally, this is fixed for everybody like we do for SmartEvidence and portfolio completion. → Outcomes
3. 'Configure' button: Allows you to add and update outcomes on the collection settings screen for outcomes (see mock-up 'Manage outcomes - group admin only'). Only group admins see that. Group tutors and group members don't.
4. Overall completion of outcomes: Progress bar across all currently available outcomes (similar to the progress bar on the portfolio completion page, just not for individual pages but for the outcomes).
5. Each outcome is collapsed so that only the short title of the outcome is displayed that concisely states what it is about. Our normal collapsable panel rules apply in terms of styling.
6. Group admins and group tutors can click an icon to mark the outcome as completed. A tooltip states that it's been completed along with the short title of the outcome. This icon with its hover state is the same as for the 'Sign-off' block for consistency.

    > There are only two states: Incomplete and completed. The icon is ticked manually as it is not guaranteed that all activities will already have been added. There is a confirmation modal to confirm the ticking. It can be set to 'Incomplete' again though by the group tutor or group admin if more activities need to be added.
    > No need to display who set the outcome to completed, but log the who and when in the database.

    * Tooltip for incompleted: Click to mark outcome 'Short title of the outcome' as completed.
    * Tooltip for completed: Outcome 'Short title of the outcome' has been completed. Click to reset.
    * Confirmation modal to confirm the ticking. It can be set to 'Incomplete' again though if more targets need to be added, again with a confirmation modal.
    * No need to display who set the outcome to completed, but log the who and when in the database.
    * Add a span around the icon so that it can be targeted and doesn't uncollapse it. It needs an ID as well so that we can map it to the outcome.

7. Click the outcome to expand the panel and see the details for that outcome.
8. A circle icon displays that the outcome is not yet completed. That is the same as in the 'Sign-off' block. A tooltip will also state that and includes the short title of the outcome. To mark the outcome as completed, click the icon and a modal is displayed to confirm this. The tickbox icon can be clicked to reset the completion if anything needs to be added. Only the latest change to 'Yes' will be recorded in the database.

    > A group member sees a bar icon because they are not able to perform an action. See mock-up 'Outcomes overview page in progress – group member'

9. The full outcome text from the 'Full title' of the outcome when it was set up.
10. The outcome type is displayed with its short code and the background colour that is defined in the stylesheet. A help icon states all available outcome types in their long form.

   > If no outcome type was selected, don't display the field.

11. Activities: Table that shows all the activities, i.e. the separate pages. These are Mahara portfolio pages for which a new type is created (see section 'Activity page infrastructure').

    > Activity titles are added automatically when a new activity is added to this outcome as page and the viewer returns to this overview page.
    > If someone places an activity page before the last page of a different outcome, it doesn't result in it being associated with that outcome. It will still be linked to the outcome in which it was created.

12. The link to the activity takes you to the page of the activity for easy access (similar to portfolio completion page).

    * While the activity has not yet been completed, everyone goes into 'Edit' mode of the page. This is to ensure that group members, group tutors, and group admins don't have an extra click to update checkpoints.
    * Once the activity has been completed, everyone goes to the 'Display' mode of the page.

    > Out of scope: If someone changes the order of the outcomes, it also changes the order in which they are displayed on this page.

13. 'Sign-off', i.e. status of the activity: That is pulled through from the activity page and can be updated directly here (like on 'Portfolio completion' for sign-off as it is the sign-off functionality). No additional info is provided here, i.e. who and when they signed off. That is accessible on the activity page. A tooltip mentions though the state of the activity.
14. 'Add activity':

    * Clicking the button sets up a new page in this collection where you can fill in all the activity information.
    * Need to ensure that the link can't be manipulated so that you can't create the page in somebody else's collection.
    * On returning to the outcomes overview page, you will see the new activity added.

15. Support taking place: This is a Yes/No switch whose status is saved immediately. No tracking of previous status changes would take place. Once the outcome is marked as 'Completed', the status can't be changed any more and only the word 'Yes' (or 'No') is displayed instead of the switch.

    > No need to display who changed the status, but log the who and when in the database.

16. Progress:

    * It's a plain text field with 3 rows shown, but could be expanded.
    * Text is saved when the 'Save' button is pressed.
    * We'll need to ensure that they can't navigate away before the text has been saved, i.e. a browser modal is to be displayed when there are unsaved changes.
    * Once the outcome is marked as 'Completed', the text can't be changed any more. Display who made the last change and when once the outcome has been completed.

All pages are added in order in which they are set up via the outcomes overview page into the collection. Once the pages are in, there is no distinction or separation between them to which outcome they belong. The link is made through the text on the activity page itself. The main navigation to the pages is anticipated to be via the outcomes overview page.

> The collection navigation at the top of the collection displays the pages in order as they appear on this overview page if all outcomes were uncollapsed, no matter their outcome. Out of scope: Adding the outcome as heading into the drop-down menu.

### Mock-up reference: 'Outcomes overview page completed – group tutor and group admin'

**Who?** As group tutor and group admin...

**What?** I want to track outcomes and activitys on one page...

**Why?** So I can see a quick overview to know what to work on with the group member.

The numbered list refers to the bullets in the mock-up 'Outcomes overview page completed – group tutor and group admin'.

1. Only group admins see the 'Configure' button, but group tutors and group admins can mark outcomes as completed.
2. Support taking place: No switch as the info has been locked in once the outcome was set to 'Completed'.
3. Progress: No editable text as the info has been locked in once the outcome was set to 'Completed'.. The name and time of the person who last edited the field is displayed.

> The button '+ Add activity' is not available any more.

> If the outcome is reset to 'Not completed', then 'Support taking place' and 'Progress' are unlocked and additional activity pages can be added.

### Mock-up reference: 'Outcomes overview page in progress – group member'

**Who?** As a group member...

**What?** I want to see the outcomes overview page...

**Why?** So I know what I will be working on.

The numbered list refers to the bullets in the mock-up 'Outcomes overview page in progress – group member'.

1. Group member cannot see the configuration button nor will they be able to give access to the collection.
2. Since they cannot mark an outcome (or activity) as completed, the line icon represents that there is generally something that could be done, but they are not allowed to. This is accompanied by a tooltip, similarly to the 'Sign-off' functionality.
3. Support taking place: Group member only see the information displayed, but doesn't have a switch available.
4. Progress: The text is displayed without the potential to edit it. The name of the group tutor or group admin who wrote the text is displayed along with the time when they edited it.

### Mock-up reference: 'Outcomes overview page completed - group member'

**Who?** As a group member...

**What?** I want to see my progress across all outcomes...

**Why?** So that I can be proud of my work and having finished my outcome.

The text refers to 'Outcomes overview page completed – group member'.

The only big difference to what group tutors and group admins see is that the group member can't mark an outcome as completed.

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Outcomes overview page in progress – group tutors and group admin'

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Outcomes overview page completed – group tutor and group admin'

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Outcomes overview page in progress – group member'

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Outcomes overview page completed - group member'

description: updated
Changed in mahara:
assignee: nobody → Cecilia Vela Gurovic (ceciliavg)
status: Confirmed → In Progress
Revision history for this message
Mahara Bot (dev-mahara) wrote : A patch has been submitted for review
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Manage outcomes - group admin only'

description: updated
Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

Mock-up reference: 'Set up the outcomes collection - group admin only'

Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13437
Committed: https://git.mahara.org/mahara/mahara/commit/4d518e915e46592fae1021e38065448f28513518
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 4d518e915e46592fae1021e38065448f28513518
Author: Cecilia Vela Gurovic <email address hidden>
Date: Tue Nov 8 16:39:02 2022 +1300

Bug 1991603: Outcomes portfolio (3): Adding collection setting switch

Change-Id: Ic5d7911cd695a3a9d8c12c20660e9b62d44b3491

Revision history for this message
Mahara Bot (dev-mahara) wrote : A change has been merged

Reviewed: https://reviews.mahara.org/c/mahara/+/13438
Committed: https://git.mahara.org/mahara/mahara/commit/8f09bc56e184ed42408aa8ead65e3d49effb375f
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 8f09bc56e184ed42408aa8ead65e3d49effb375f
Author: Cecilia Vela Gurovic <email address hidden>
Date: Wed Nov 9 11:37:24 2022 +1300

Bug 1991603: Outcomes portfolio (3): Creating 'outcome' table

Change-Id: I179daf3cacfd6d2ba4d7d04a39cba6aa8c95b618

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13480
Committed: https://git.mahara.org/mahara/mahara/commit/9068193f245638cc6f69dbf88bf60bc4a4bc6f13
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 9068193f245638cc6f69dbf88bf60bc4a4bc6f13
Author: Cecilia Vela Gurovic <email address hidden>
Date: Thu Nov 17 08:59:17 2022 +1300

Bug 1991603: Outcomes portfolio (3): Collection's outcome form

Change-Id: Ifb2e8e701975dc00de0507ed4ad6299a27d3b0ae

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13522
Committed: https://git.mahara.org/mahara/mahara/commit/67c4a7fe556665fb4ad0bd0ccd5767d49242a215
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 67c4a7fe556665fb4ad0bd0ccd5767d49242a215
Author: Cecilia Vela Gurovic <email address hidden>
Date: Tue Nov 29 09:13:57 2022 +1300

Bug 1991603: Outcomes portfolio (3): Outcomes overview few changes:

- add outcome type help file
- one script to update outcomes
- css changes
- adding overview page help file
- filter actions for different group roles

Change-Id: Ia73501293eeaec9f5596294b5a4881654a2b6208

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13497
Committed: https://git.mahara.org/mahara/mahara/commit/fe4298081aac408f614f08c2b4df5fddad820832
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit fe4298081aac408f614f08c2b4df5fddad820832
Author: Cecilia Vela Gurovic <email address hidden>
Date: Fri Nov 25 09:27:41 2022 +1300

Bug 1991603: Outcomes portfolio (3): Outcomes overview page

Made some adjustments for the collection navigation bar

Change-Id: I02582a03bbee21b5a623902f5794ae353f754ddb

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13523
Committed: https://git.mahara.org/mahara/mahara/commit/052fd03cd63176df617935cf72f07f8b06743471
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 052fd03cd63176df617935cf72f07f8b06743471
Author: Cecilia Vela Gurovic <email address hidden>
Date: Tue Nov 29 18:54:10 2022 +1300

Bug 1991603: Outcomes portfolio (3): Redirection between pages

Change-Id: Iecda6b0714ebefe96d3008dcd33f6b611d2ae2fc

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13557
Committed: https://git.mahara.org/mahara/mahara/commit/1917b1d447c2224dfd35d702e22e8930ed7103c0
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit 1917b1d447c2224dfd35d702e22e8930ed7103c0
Author: Evonne <email address hidden>
Date: Fri Dec 16 15:20:58 2022 +1300

Bug 1991603: Outcomes portfolio (3): Theming for outcomes

Adding 4 default outcomes colour options and fixing some things to
align with raw.

Adjusted the colours to be a map array so we can loop through them
easier

behatnotneeded

Change-Id: I5fbea971f9cf8c305ede800ca2d3034459c6e3d0

Revision history for this message
Mahara Bot (dev-mahara) wrote :

Reviewed: https://reviews.mahara.org/c/mahara/+/13543
Committed: https://git.mahara.org/mahara/mahara/commit/b21620b47c358cb573af4da88861a3c2636cd19d
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit b21620b47c358cb573af4da88861a3c2636cd19d
Author: Cecilia Vela Gurovic <email address hidden>
Date: Tue Dec 6 11:01:42 2022 +1300

Bug 1991603: Outcomes portfolio (3): Activities table in outcomes overview screen

- only load html and js related to actions a user can do if the user is allowed to do them

- set up the code to allow sign off of an activity
TODO: actually save activity state on DB when we know where to save it

- create a function to get activities from DB (only works after running upgrades from https://reviews.mahara.org/c/mahara/+/13482 and manually populating data)

- made a new template for each activity table row so it's easier to update when changing activity status

Change-Id: I110416e1d47d133ea4c83b553167d88a259e7bea

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

There are a couple of issues that I ran into:

1. Outcomes portfolios don't show up under 'Group portfolios'. Regular non-outcomes collections and regular pages do show up.
2. Can't edit blocks on group homepage as group admin when it's an outcomes group -> It looks like the permissions were made too restrictive. I do have 'Delete' buttons in a different group type.

tags: added: newfeature
Revision history for this message
Mahara Bot (dev-mahara) wrote : A patch has been submitted for review
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote : A change has been merged

Reviewed: https://reviews.mahara.org/c/mahara/+/13685
Committed: https://git.mahara.org/mahara/mahara/commit/ee63e02893411d66681ce6cc24b527b93cffc753
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit ee63e02893411d66681ce6cc24b527b93cffc753
Author: Robert Lyon <email address hidden>
Date: Thu Feb 2 21:35:27 2023 +1300

Bug 1991603: Outcomes portfolio (3) - Signoff circle to have inner dot

On the outcome overview page

Also add an access denied if the values of the 'Add activity' button
are manipulated and there isn't a matching group/collection/outcome

Also fixing issue when outcome type is not selected and we are viewing
the activity page

Change-Id: Id1b4e8a30947b81bef76c92b27929bdf37068518
Signed-off-by: Robert Lyon <email address hidden>

Revision history for this message
Mahara Bot (dev-mahara) wrote : A patch has been submitted for review
Revision history for this message
Mahara Bot (dev-mahara) wrote :
Revision history for this message
Mahara Bot (dev-mahara) wrote : A change has been merged

Reviewed: https://reviews.mahara.org/c/mahara/+/13725
Committed: https://git.mahara.org/mahara/mahara/commit/e43151a038da46fcc04faf24a29277c8c72cf2ad
Submitter: "Robert Lyon <email address hidden>"
Branch: main

commit e43151a038da46fcc04faf24a29277c8c72cf2ad
Author: Kristina Hoeppner <email address hidden>
Date: Wed Feb 8 16:06:35 2023 +1300

Bug 1991603: Outcomes portfolio (3) - Lang string updates

Fixing a couple of language strings

Change-Id: I304ae2a3867c185d9059c1a51e08b0ca4cb8ece1

Changed in mahara:
status: In Progress → Fix Committed
Robert Lyon (robertl-9)
Changed in mahara:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.