From 5002e4b0bfa91be1869b3a18cabbf0f7abe1afc4 Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Tue, 17 Mar 2020 14:15:52 +0100
Subject: [PATCH] OO-4579: allow upload / multipart in two other wizards of
 grading flow

---
 .../grading/ui/GradingAssignmentsListController.java       | 7 +++++++
 .../grading/ui/wizard/AssignGrader1ChooseMemberStep.java   | 1 +
 .../modules/grading/ui/wizard/AssignGrader3MailStep.java   | 1 +
 3 files changed, 9 insertions(+)

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 72f6b3fd244..5fbc7a45689 100644
--- a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java
+++ b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java
@@ -69,6 +69,7 @@ import org.olat.core.id.Identity;
 import org.olat.core.id.Roles;
 import org.olat.core.id.context.ContextEntry;
 import org.olat.core.id.context.StateEntry;
+import org.olat.core.util.FileUtils;
 import org.olat.core.util.StringHelper;
 import org.olat.core.util.mail.ContactList;
 import org.olat.core.util.mail.ContactMessage;
@@ -716,6 +717,9 @@ public class GradingAssignmentsListController extends FormBasicController implem
 			for(GradingAssignment assignment:assignments) {
 				gradingService.assignGrader(assignment, assignGrader.getGrader(), sendTemplate, result);
 			}
+			if(mailTemplate.getAttachmentsTmpDir() != null) {
+				FileUtils.deleteDirsAndFiles(mailTemplate.getAttachmentsTmpDir(), true, true);
+			}
 			return StepsMainRunController.DONE_MODIFIED;
 		};
 		
@@ -760,6 +764,9 @@ public class GradingAssignmentsListController extends FormBasicController implem
 				GradingAssignment unassignedAssignment = gradingService.unassignGrader(assignment);
 				gradingService.assignGrader(unassignedAssignment, assignGrader.getGrader(), sendTemplate, result);
 			}
+			if(mailTemplate.getAttachmentsTmpDir() != null) {
+				FileUtils.deleteDirsAndFiles(mailTemplate.getAttachmentsTmpDir(), true, true);
+			}
 			return StepsMainRunController.DONE_MODIFIED;
 		};
 		
diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java
index 8e9e6720cf0..9a9f876ad44 100644
--- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java
+++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java
@@ -52,6 +52,7 @@ public class AssignGrader1ChooseMemberStep extends BasicStep {
 
 	@Override
 	public StepFormController getStepController(UserRequest ureq, WindowControl wControl, StepsRunContext runContext, Form form) {
+		form.setMultipartEnabled(true);
 		return new AssignGraderBySearchController(ureq, wControl, assignGrader, form, runContext);
 	}
 
diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java
index 9906bef6992..1294705a53d 100644
--- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java
+++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java
@@ -55,6 +55,7 @@ public class AssignGrader3MailStep extends BasicStep {
 	public StepFormController getStepController(UserRequest ureq, WindowControl wControl, StepsRunContext runContext, Form form) {
 		ContactList contacts = new ContactList(getTranslator().translate("assign.grader.contact"));
 		contacts.add(assignGrader.getGrader());
+		form.setMultipartEnabled(true);
 		return new ImportGraderMailController(ureq, wControl, mailTemplate, contacts, assignGrader, form, runContext);
 	}
 }
\ No newline at end of file
-- 
GitLab