Skip to content
Snippets Groups Projects
Commit 9bc9449c authored by srosse's avatar srosse
Browse files

OO-2522: save the default setting manual / auto correction with new test

parent bee9bc0f
No related branches found
No related tags found
No related merge requests found
......@@ -180,7 +180,7 @@ public class IQConfigurationController extends BasicController {
myContent.contextPut("type", type);
putInitialPanel(myContent);
updateEditController(ureq);
updateEditController(ureq, false);
switch(type) {
case AssessmentInstance.QMD_ENTRY_TYPE_ASSESS:
......@@ -196,7 +196,13 @@ public class IQConfigurationController extends BasicController {
}
}
protected void updateEditController(UserRequest ureq) {
/**
* Update the edit and layout controllers.
*
* @param ureq The user request
* @param replacedTest Set true if the test was replaced by a new one.
*/
protected void updateEditController(UserRequest ureq, boolean replacedTest) {
removeAsListenerAndDispose(mod12ConfigForm);
removeAsListenerAndDispose(mod21ConfigForm);
removeAsListenerAndDispose(modOnyxConfigForm);
......@@ -209,6 +215,10 @@ public class IQConfigurationController extends BasicController {
myContent.remove("iqeditform");
} else if(ImsQTI21Resource.TYPE_NAME.equals(re.getOlatResource().getResourceableTypeName())) {
boolean needManualCorrection = needManualCorrectionQTI21(re);
if(replacedTest) {// set some default settings in case the user don't save the next panel
moduleConfiguration.setStringValue(IQEditController.CONFIG_CORRECTION_MODE, needManualCorrection ? "manual" : "auto");
fireEvent(ureq, NodeEditController.NODECONFIG_CHANGED_EVENT);
}
QTI21DeliveryOptions deliveryOptions = qti21service.getDeliveryOptions(re);
mod21ConfigForm = new QTI21EditForm(ureq, getWindowControl(), moduleConfiguration, deliveryOptions, needManualCorrection);
mod21ConfigForm.update(re);
......@@ -221,6 +231,10 @@ public class IQConfigurationController extends BasicController {
myContent.put("iqeditform", modOnyxConfigForm.getInitialComponent());
} else {
boolean hasEssay = needManualCorrectionQTI12(re);
if(replacedTest) {// set some default settings in case the user don't save the next panel
moduleConfiguration.setStringValue(IQEditController.CONFIG_CORRECTION_MODE, hasEssay ? "manual" : "auto");
fireEvent(ureq, NodeEditController.NODECONFIG_CHANGED_EVENT);
}
mod12ConfigForm = new IQ12EditForm(ureq, getWindowControl(), moduleConfiguration, hasEssay);
mod12ConfigForm.update(re.getOlatResource());
listenTo(mod12ConfigForm);
......@@ -280,7 +294,7 @@ public class IQConfigurationController extends BasicController {
RepositoryEntry re = searchController.getSelectedEntry();
boolean needManualCorrection = checkManualCorrectionNeeded(re);
doIQReference(urequest, re, needManualCorrection);
updateEditController(urequest);
updateEditController(urequest, true);
}
} else if (source == replaceWizard) {
if(event == Event.CANCELLED_EVENT) {
......
......@@ -315,7 +315,7 @@ public class IQEditController extends ActivateableTabbableDefaultController impl
} else if (source == layoutConfigurationCtrl) {
if (event == NodeEditController.NODECONFIG_CHANGED_EVENT) {
fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT);
configurationCtrl.updateEditController(urequest);
configurationCtrl.updateEditController(urequest, false);
layoutConfigurationCtrl.updateEditController(urequest);
}
}
......
......@@ -73,7 +73,7 @@ public class QTI21EditForm extends FormBasicController {
private StaticTextElement minScoreEl, maxScoreEl, cutValueEl;
private MultipleSelectionElement showResultsOnFinishEl, assessmentResultsOnFinishEl;
private final boolean needManulCorrection;
private final boolean needManualCorrection;
private final ModuleConfiguration modConfig;
private final QTI21DeliveryOptions deliveryOptions;
......@@ -81,12 +81,12 @@ public class QTI21EditForm extends FormBasicController {
private QTI21Service qtiService;
public QTI21EditForm(UserRequest ureq, WindowControl wControl, ModuleConfiguration modConfig,
QTI21DeliveryOptions deliveryOptions, boolean needManulCorrection) {
QTI21DeliveryOptions deliveryOptions, boolean needManualCorrection) {
super(ureq, wControl);
this.modConfig = modConfig;
this.deliveryOptions = (deliveryOptions == null ? new QTI21DeliveryOptions() : deliveryOptions);
this.needManulCorrection = needManulCorrection;
this.needManualCorrection = needManualCorrection;
initForm(ureq);
}
......@@ -116,7 +116,7 @@ public class QTI21EditForm extends FormBasicController {
}
}
if(!selected) {
if(needManulCorrection) {
if(needManualCorrection) {
correctionModeEl.select(correctionModeKeys[1], true);
} else {
correctionModeEl.select(correctionModeKeys[0], true);
......@@ -195,10 +195,8 @@ public class QTI21EditForm extends FormBasicController {
showResultsOnFinishEl.uncheckAll();
assessmentResultsOnFinishEl.uncheckAll();
}
uifactory.addFormSubmitButton("submit", formLayout);
update();
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment