From 2c7aaa631b124d26a19c633fcc13f7ccecbc27bd Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Tue, 17 Mar 2020 08:24:41 +0100
Subject: [PATCH] OO-4580: don't show name in correction workflow

---
 .../CorrectionIdentityAssessmentItemListController.java  | 5 ++---
 .../correction_identity_assessment_item_list.html        | 5 +++--
 .../qti21/ui/assessment/_i18n/LocalStrings_de.properties | 1 +
 .../qti21/ui/assessment/_i18n/LocalStrings_en.properties | 1 +
 .../grading/ui/GradingAssignmentsListController.java     | 9 +++++----
 5 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/olat/ims/qti21/ui/assessment/CorrectionIdentityAssessmentItemListController.java b/src/main/java/org/olat/ims/qti21/ui/assessment/CorrectionIdentityAssessmentItemListController.java
index 449a5727cff..cc3bf1aac44 100644
--- a/src/main/java/org/olat/ims/qti21/ui/assessment/CorrectionIdentityAssessmentItemListController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/assessment/CorrectionIdentityAssessmentItemListController.java
@@ -141,7 +141,7 @@ public class CorrectionIdentityAssessmentItemListController extends FormBasicCon
 	
 	public CorrectionIdentityAssessmentItemListController(UserRequest ureq, WindowControl wControl, BreadcrumbPanel stackPanel,
 			CorrectionOverviewModel model, Identity assessedIdentity, GradingAssignment assignment, GradingTimeRecordRef gradingTimeRecord,
-			boolean readOnly) {
+			boolean readOnly, boolean anonymous) {
 		super(ureq, wControl, "correction_identity_assessment_item_list");
 		
 		this.stackPanel = stackPanel;
@@ -151,8 +151,7 @@ public class CorrectionIdentityAssessmentItemListController extends FormBasicCon
 		this.saveEnabled = !readOnly;
 		this.assignment = assignment;
 		this.gradingTimeRecord = gradingTimeRecord;
-		title = userManager.getUserDisplayName(assessedIdentity);
-		
+		title = anonymous ? translate("anonymous.user") : userManager.getUserDisplayName(assessedIdentity);
 		initForm(ureq);
 		loadModel(true);
 	}
diff --git a/src/main/java/org/olat/ims/qti21/ui/assessment/_content/correction_identity_assessment_item_list.html b/src/main/java/org/olat/ims/qti21/ui/assessment/_content/correction_identity_assessment_item_list.html
index 1a732b8053f..b797c35374e 100644
--- a/src/main/java/org/olat/ims/qti21/ui/assessment/_content/correction_identity_assessment_item_list.html
+++ b/src/main/java/org/olat/ims/qti21/ui/assessment/_content/correction_identity_assessment_item_list.html
@@ -1,8 +1,9 @@
 <div class="clearfix">
 	$r.render("back")
 </div>
-
-<h4><i class="o_icon o_icon-fw o_icon_user"> </i> $r.escapeHtml($title)</h4>
+#if($r.isNotEmpty($title))
+	<h4><i class="o_icon o_icon-fw o_icon_user"> </i> $r.escapeHtml($title)</h4>
+#end
 $r.render("table")
 #if($r.visible("save.tests") || $r.visible("back.overview"))
 <div class="o_button_group">
diff --git a/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_de.properties
index 637834417a3..59956a55635 100644
--- a/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_de.properties
@@ -1,4 +1,5 @@
 #Tue Nov 15 16:25:36 CET 2016
+anonymous.user=Pr\u00FCfling
 assessed.identity=Benutzer
 back.overview=Zur\u00FCck zur \u00DCbersicht
 number.assessed.identity={0}. Benutzer
diff --git a/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_en.properties
index 7cf2a947b7a..15e9082bfca 100644
--- a/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/ims/qti21/ui/assessment/_i18n/LocalStrings_en.properties
@@ -1,4 +1,5 @@
 #Tue Mar 13 18:56:55 CET 2018
+anonymous.user=Examinee
 assessed.identity=assessed user
 back.overview=Back to overview
 comment=Comment
diff --git a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java
index ade777882b4..72f6b3fd244 100644
--- a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java
+++ b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java
@@ -551,6 +551,7 @@ public class GradingAssignmentsListController extends FormBasicController implem
 	
 	private void doGrade(UserRequest ureq, GradingAssignmentRow row, boolean viewOnly) {
 		GradingAssignment assignment = row.getAssignment();
+		boolean anonymous = !row.isAssessedIdentityVisible();
 		AssessmentEntry assessment = assignment.getAssessmentEntry();
 		assessment = gradingService.loadFullAssessmentEntry(assessment);
 		
@@ -559,7 +560,7 @@ public class GradingAssignmentsListController extends FormBasicController implem
 			ICourse course = CourseFactory.loadCourse(entry);
 			CourseNode node = course.getRunStructure().getNode(assessment.getSubIdent());
 			if(node instanceof IQTESTCourseNode) {
-				doQTICorrection(ureq, assessment, assignment, (IQTESTCourseNode)node, viewOnly);
+				doQTICorrection(ureq, assessment, assignment, (IQTESTCourseNode)node, viewOnly, anonymous);
 			}
 		}
 	}
@@ -572,8 +573,8 @@ public class GradingAssignmentsListController extends FormBasicController implem
 		NewControllerFactory.getInstance().launch(businessPath, ureq, getWindowControl());
 	}
 	
-	private void doQTICorrection(UserRequest ureq, AssessmentEntry assessment,
-			GradingAssignment assignment, IQTESTCourseNode courseNode, boolean readOnly) {
+	private void doQTICorrection(UserRequest ureq, AssessmentEntry assessment, GradingAssignment assignment,
+			IQTESTCourseNode courseNode, boolean readOnly, boolean anonymous) {
 		removeAsListenerAndDispose(correctionCtrl);
 		
 		Identity assessedIdentity = assessment.getIdentity();
@@ -597,7 +598,7 @@ public class GradingAssignmentsListController extends FormBasicController implem
 		GradingTimeRecordRef record = gradingService.getCurrentTimeRecord(assignment, ureq.getRequestTimestamp());
 		
 		correctionCtrl = new CorrectionIdentityAssessmentItemListController(ureq, getWindowControl(), stackPanel,
-				model, assessedIdentity, assignment, record, readOnly);
+				model, assessedIdentity, assignment, record, readOnly, anonymous);
 		listenTo(correctionCtrl);
 		stackPanel.pushController(translate("correction"), correctionCtrl);
 	}
-- 
GitLab