From c10ef08b641bbf024fc11ff2616a829f7833440b Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Fri, 21 Jun 2019 11:45:09 +0200 Subject: [PATCH] OO-4095: revert changes as submit button --- .../ui/EvaluationFormExecutionController.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/olat/modules/forms/ui/EvaluationFormExecutionController.java b/src/main/java/org/olat/modules/forms/ui/EvaluationFormExecutionController.java index f92ba9d0bf3..6d09a5706cd 100644 --- a/src/main/java/org/olat/modules/forms/ui/EvaluationFormExecutionController.java +++ b/src/main/java/org/olat/modules/forms/ui/EvaluationFormExecutionController.java @@ -33,7 +33,6 @@ import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; import org.olat.core.gui.components.form.flexible.impl.FormEvent; -import org.olat.core.gui.components.form.flexible.impl.elements.FormSubmit; import org.olat.core.gui.components.link.Link; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.Event; @@ -81,7 +80,7 @@ public class EvaluationFormExecutionController extends FormBasicController imple private final Map<String, EvaluationFormElementHandler> handlerMap = new HashMap<>(); private final List<ExecutionFragment> fragments = new ArrayList<>(); private FormLink saveLink; - private FormSubmit doneLink; + private FormLink doneLink; private DialogBoxController confirmDoneCtrl; private PageFragmentsElementImpl fragmentsEl; @@ -92,6 +91,8 @@ public class EvaluationFormExecutionController extends FormBasicController imple private boolean readOnly; private boolean showDoneButton; + private boolean immediateSave = false; + private EvaluationFormSession session; private final EvaluationFormResponses responses; @@ -196,7 +197,8 @@ public class EvaluationFormExecutionController extends FormBasicController imple boolean anonymous = !notAnonymous; flc.contextPut("anonymous", Boolean.valueOf(showDoneButton && anonymous)); - doneLink = uifactory.addFormSubmitButton("save.as.done", "save.as.done", formLayout); + doneLink = uifactory.addFormLink("save.as.done", "save.as.done", null, flc, Link.BUTTON); + doneLink.setPrimary(true); saveLink = uifactory.addFormLink("save.intermediate", "save.intermediate", null, flc, Link.BUTTON); showHideButtons(); } @@ -268,9 +270,11 @@ public class EvaluationFormExecutionController extends FormBasicController imple @Override protected void formInnerEvent(UserRequest ureq, FormItem source, FormEvent event) { if (saveLink == source) { - if(mainForm.validate(ureq)) { - doSaveResponses(); - } + immediateSave = true; + mainForm.submit(ureq); + } else if (doneLink == source) { + immediateSave = false; + mainForm.submit(ureq); } super.formInnerEvent(ureq, source, event); } @@ -288,7 +292,7 @@ public class EvaluationFormExecutionController extends FormBasicController imple @Override protected void formOK(UserRequest ureq) { boolean responsesSaved = doSaveResponses(); - if (responsesSaved) { + if (!immediateSave && responsesSaved) { doConfirmDone(ureq); } } @@ -338,7 +342,7 @@ public class EvaluationFormExecutionController extends FormBasicController imple List<ValidationMessage> messages = new ArrayList<>(); validate(ureq, messages); - if (!messages.isEmpty()) { + if (messages.size() > 0) { for (ValidationMessage message : messages) { sb.append("<p class='o_warning'>").append(message.getMessage()).append("</p>"); } -- GitLab