From 708356fc634cec2c9dbae8a307359284c6582d0e Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Tue, 9 May 2017 13:44:42 +0200 Subject: [PATCH] OO-2736: show change log if score is visible --- .../iq/QTI21AssessmentRunController.java | 20 +++++++++---------- .../nodes/iq/_content/assessment_run.html | 3 +-- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/olat/course/nodes/iq/QTI21AssessmentRunController.java b/src/main/java/org/olat/course/nodes/iq/QTI21AssessmentRunController.java index 2d713ea0357..d424995e395 100644 --- a/src/main/java/org/olat/course/nodes/iq/QTI21AssessmentRunController.java +++ b/src/main/java/org/olat/course/nodes/iq/QTI21AssessmentRunController.java @@ -42,7 +42,6 @@ import org.olat.core.gui.control.generic.iframe.IFrameDisplayController; import org.olat.core.gui.media.MediaResource; import org.olat.core.gui.media.NotFoundMediaResource; import org.olat.core.gui.translator.Translator; -import org.olat.core.id.Identity; import org.olat.core.id.OLATResourceable; import org.olat.core.logging.activity.ThreadLocalUserActivityLogger; import org.olat.core.util.Formatter; @@ -227,6 +226,7 @@ public class QTI21AssessmentRunController extends BasicController implements Gen mainVC.contextPut("hasPassedValue", (scoreEval.getPassed() == null ? Boolean.FALSE : Boolean.TRUE)); mainVC.contextPut("passed", scoreEval.getPassed()); mainVC.contextPut("attempts", attempts); //at least one attempt + mainVC.contextPut("showChangeLog", Boolean.TRUE); } } else if(courseNode instanceof IQTESTCourseNode) { IQTESTCourseNode testCourseNode = (IQTESTCourseNode)courseNode; @@ -238,6 +238,7 @@ public class QTI21AssessmentRunController extends BasicController implements Gen mainVC.contextPut("passed", Boolean.FALSE); mainVC.contextPut("comment", null); mainVC.contextPut("attempts", 0); + mainVC.contextPut("showChangeLog", Boolean.FALSE); } else { Boolean passed = assessmentEntry.getPassed(); //block if test passed (and config set to check it) @@ -248,7 +249,6 @@ public class QTI21AssessmentRunController extends BasicController implements Gen } mainVC.contextPut("blockAfterSuccess", blocked); - Identity identity = userCourseEnv.getIdentityEnvironment().getIdentity(); boolean resultsVisible = assessmentEntry.getUserVisibility() == null || assessmentEntry.getUserVisibility().booleanValue(); mainVC.contextPut("resultsVisible", resultsVisible); mainVC.contextPut("score", AssessmentHelper.getRoundedScore(assessmentEntry.getScore())); @@ -262,11 +262,8 @@ public class QTI21AssessmentRunController extends BasicController implements Gen } Integer attempts = assessmentEntry.getAttempts(); mainVC.contextPut("attempts", attempts == null ? new Integer(0) : attempts); - - if(!anonym) { - UserNodeAuditManager am = userCourseEnv.getCourseEnvironment().getAuditManager(); - mainVC.contextPut("log", am.getUserNodeLog(courseNode, identity)); - } + boolean showChangelog = (!anonym && resultsVisible && isResultVisible(config)); + mainVC.contextPut("showChangeLog", showChangelog); if(deliveryOptions.isDigitalSignature()) { AssessmentTestSession session = qtiService.getAssessmentTestSession(assessmentEntry.getAssessmentId()); @@ -305,7 +302,7 @@ public class QTI21AssessmentRunController extends BasicController implements Gen } /** - * WARNING! The variables showResultsOnHomePage, showResultsVisible and showChangelog are not used + * WARNING! The variables showResultsOnHomePage and showResultsVisible are not used * in the velocity template and the CONFIG_KEY_RESULT_ON_HOME_PAGE is not editable * in the configuration of the course element for QTI 2.1!!!! * @@ -345,9 +342,10 @@ public class QTI21AssessmentRunController extends BasicController implements Gen } } - UserNodeAuditManager am = userCourseEnv.getCourseEnvironment().getAuditManager(); - mainVC.contextPut("log", am.getUserNodeLog(courseNode, getIdentity())); - mainVC.contextPut("showChangelog", showResultsOnHomePage); + if(!anonym) { + UserNodeAuditManager am = userCourseEnv.getCourseEnvironment().getAuditManager(); + mainVC.contextPut("log", am.getUserNodeLog(courseNode, getIdentity())); + } } private boolean isResultVisible(ModuleConfiguration modConfig) { diff --git a/src/main/java/org/olat/course/nodes/iq/_content/assessment_run.html b/src/main/java/org/olat/course/nodes/iq/_content/assessment_run.html index 8411566bb23..6305ce0af90 100644 --- a/src/main/java/org/olat/course/nodes/iq/_content/assessment_run.html +++ b/src/main/java/org/olat/course/nodes/iq/_content/assessment_run.html @@ -169,8 +169,7 @@ <div class="o_button_group">$r.render("start")</div> #end - -#if($r.isNotNull($log)) ##&& $showChangelog (in QTI 1.2) +#if($r.isNotNull($log) && $r.isNotNull($showChangeLog) && $showChangeLog) <div class="o_box"> #o_togglebox_start("o_course_run_log" $r.translate("log.title")) <pre class="small">$log</pre> -- GitLab