Problem with annotation feedback and draft feedback
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
High
|
Dianne Tennent |
Bug Description
Problem:
Person A creates a SmartEvidence collection and has an annotation block on a page
Person B adds a draft comment to it
Person A requests the comment to be made public
Person B gets an email and follows the link
-- gets error
[WAR] e2 (artefact/
Call stack (most recent first):
ArtefactTyp
ArtefactTyp
To test:
1 Set up new site
2 Go to Plugin Extensions page and activate annotation
3 Edit 'No institution' and allow SmartEvidence
4 Create accounts via CSV
5 Log in as Person A and create a page
6 Create a collection with a SmartEvidence option chosen and add page to it
7 Share the collection to Person B with special role Peer
8 Go to the collection's SmartEvidence page and add annotation to one of the dots
9 Log in as Person B and go to the collection SmartEvidence page and click on the circle dot
10 Leave some feedback and turn 'Mark public' to No - the feedback should have "This feedback is private."
11 Log in as Person A and go to the page itself in the collection and click on Feedback (1) link in annotation block
12 In the modal click the 'Make public' button - you should see "A message has been sent to Person B to request that the feedback be made public."
13 Log in as Person B and go to the page itself in the collection - you see "You cannot see the content on this page because it does not require a peer assessment."
14 Go to your inbox and see "Request to change private feedback to public"
15 Click the 'Annotation' link in the email and get the error.
Changed in mahara: | |
assignee: | nobody → Robert Lyon (robertl-9) |
assignee: | Robert Lyon (robertl-9) → nobody |
assignee: | nobody → Dianne Tennent (dianne-t) |
milestone: | none → 22.04.0 |
importance: | Undecided → High |
status: | New → Confirmed |
Changed in mahara: | |
status: | Confirmed → In Progress |
description: | updated |
description: | updated |
Changed in mahara: | |
status: | In Progress → Fix Committed |
Changed in mahara: | |
status: | Fix Committed → Fix Released |
Making the following adjustments will stop the error
/htdocs/ artefact/ annotation/ lib.php otation extends ArtefactType {
@@ -226,6 +226,7 @@ class ArtefactTypeAnn
protected $artefact; // artefactid of the artefact this annotation is linked to.
protected $view; // viewid of the view this annotation is linked to.
protected $lastcontentupdate; // last updated as a datetime.
+ protected $onartefact;
/htdocs/ view/view. php 'artefact' , null); ment($showcomme nt); 'artefact' , 'artefacttype', 'id', $showcomment); artefact_ class_name( $artefacttype) ; $showcomment) ; >get('onartefac t') && !$commentonarte fact) {
redirect( get_config( 'wwwroot' ) . 'view/view.php?id=' . $viewid . '&showcomment=' . $showcomment . '&modal= 1&artefact= ' . $tmpcomment- >get('onartefac t'));
@@ -560,7 +560,9 @@ $smarty = smarty(
$commentonartefact = param_integer(
// doublecheck it's a comment on artefact in case is old email
if ($showcomment) {
- $tmpcomment = new ArtefactTypeCom
+ $artefacttype = get_field(
+ $classname = generate_
+ $tmpcomment = new $classname(
if ($tmpcomment-
}
But there is still the issue that because the page is shared to the person as a peer they cannot see the annotation block and therefore are not able to make the private annotation feedback public