Skip to content
Snippets Groups Projects
Commit 9074193f authored by uhensler's avatar uhensler
Browse files

OO-3304: Add more configurations to the course lectures follow up generator

- minimum number of lectures
parent b5bcc9ff
No related branches found
No related tags found
No related merge requests found
...@@ -102,6 +102,7 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider ...@@ -102,6 +102,7 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider
public static final String CONFIG_KEY_REMINDER1_AFTER_DC_DAYS = "reminder1.after.dc.start.days"; public static final String CONFIG_KEY_REMINDER1_AFTER_DC_DAYS = "reminder1.after.dc.start.days";
public static final String CONFIG_KEY_REMINDER2_AFTER_DC_DAYS = "reminder2.after.dc.start.days"; public static final String CONFIG_KEY_REMINDER2_AFTER_DC_DAYS = "reminder2.after.dc.start.days";
public static final String CONFIG_KEY_TITLE = "title"; public static final String CONFIG_KEY_TITLE = "title";
public static final String CONFIG_KEY_TOTAL_LECTURES_MIN = "total.lecture";
public static final String ROLES_DELIMITER = ","; public static final String ROLES_DELIMITER = ",";
...@@ -192,7 +193,6 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider ...@@ -192,7 +193,6 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider
List<Organisation> organisations, LectureBlockInfo lectureBlockInfo, List<Organisation> organisations, LectureBlockInfo lectureBlockInfo,
QualityGeneratorRef previousGeneratorRef, QualityGeneratorConfigs previosGeneratorConfigs) { QualityGeneratorRef previousGeneratorRef, QualityGeneratorConfigs previosGeneratorConfigs) {
// Load data // Load data
RepositoryEntry formEntry = generator.getFormEntry();
RepositoryEntry course = repositoryService.loadByKey(lectureBlockInfo.getCourseRepoKey()); RepositoryEntry course = repositoryService.loadByKey(lectureBlockInfo.getCourseRepoKey());
Identity teacher = securityManager.loadIdentityByKey(lectureBlockInfo.getTeacherKey()); Identity teacher = securityManager.loadIdentityByKey(lectureBlockInfo.getTeacherKey());
String topicKey = getTopicKey(previosGeneratorConfigs); String topicKey = getTopicKey(previosGeneratorConfigs);
...@@ -293,6 +293,12 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider ...@@ -293,6 +293,12 @@ public class CourseLecturesFollowUpProvider implements QualityGeneratorProvider
searchParams.setExcludeGeneratorAndTopicRepositoryRef(generator); searchParams.setExcludeGeneratorAndTopicRepositoryRef(generator);
} }
String minLectures = configs.getValue(CONFIG_KEY_TOTAL_LECTURES_MIN);
if (StringHelper.containsNonWhitespace(minLectures)) {
Integer minExceedingLectures = Integer.parseInt(minLectures);
searchParams.setMinTotalLectures(minExceedingLectures);
}
String minutesBeforeEnd = configs.getValue(CONFIG_KEY_MINUTES_BEFORE_END); String minutesBeforeEnd = configs.getValue(CONFIG_KEY_MINUTES_BEFORE_END);
minutesBeforeEnd = StringHelper.containsNonWhitespace(minutesBeforeEnd)? minutesBeforeEnd: "0"; minutesBeforeEnd = StringHelper.containsNonWhitespace(minutesBeforeEnd)? minutesBeforeEnd: "0";
Date from = ProviderHelper.addMinutes(fromDate, minutesBeforeEnd); Date from = ProviderHelper.addMinutes(fromDate, minutesBeforeEnd);
......
...@@ -62,6 +62,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -62,6 +62,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
private TextElement gradeTotalLimitEl; private TextElement gradeTotalLimitEl;
private SingleSelection gradeSingleCheckEl; private SingleSelection gradeSingleCheckEl;
private TextElement gradeSingleLimitEl; private TextElement gradeSingleLimitEl;
private TextElement lecturesTotalMinEl;
private TextElement durationEl; private TextElement durationEl;
private TextElement minutesBeforeEndEl; private TextElement minutesBeforeEndEl;
private TextElement invitationDaysEl; private TextElement invitationDaysEl;
...@@ -128,6 +129,9 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -128,6 +129,9 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
String singleLimit = configs.getValue(CourseLecturesFollowUpProvider.CONFIG_KEY_GRADE_SINGLE_LIMIT); String singleLimit = configs.getValue(CourseLecturesFollowUpProvider.CONFIG_KEY_GRADE_SINGLE_LIMIT);
gradeSingleLimitEl = uifactory.addTextElement("followup.config.single.limit", 5, singleLimit, formLayout); gradeSingleLimitEl = uifactory.addTextElement("followup.config.single.limit", 5, singleLimit, formLayout);
String lecturesTotalMin = configs.getValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MIN);
lecturesTotalMinEl = uifactory.addTextElement("config.lectures.total.min", 4, lecturesTotalMin, formLayout);
String minutesBeforeEnd = configs.getValue(CourseLecturesFollowUpProvider.CONFIG_KEY_MINUTES_BEFORE_END); String minutesBeforeEnd = configs.getValue(CourseLecturesFollowUpProvider.CONFIG_KEY_MINUTES_BEFORE_END);
minutesBeforeEndEl = uifactory.addTextElement("config.minutes.before.end", 3, minutesBeforeEnd, formLayout); minutesBeforeEndEl = uifactory.addTextElement("config.minutes.before.end", 3, minutesBeforeEnd, formLayout);
...@@ -151,6 +155,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -151,6 +155,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
boolean enabled = !readOnly; boolean enabled = !readOnly;
titleEl.setEnabled(enabled); titleEl.setEnabled(enabled);
previousGeneratorEl.setEnabled(enabled); previousGeneratorEl.setEnabled(enabled);
lecturesTotalMinEl.setEnabled(enabled);
minutesBeforeEndEl.setEnabled(enabled); minutesBeforeEndEl.setEnabled(enabled);
invitationDaysEl.setEnabled(enabled); invitationDaysEl.setEnabled(enabled);
reminder1DaysEl.setEnabled(enabled); reminder1DaysEl.setEnabled(enabled);
...@@ -167,6 +172,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -167,6 +172,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
allOk &= validateIsMandatory(previousGeneratorEl); allOk &= validateIsMandatory(previousGeneratorEl);
allOk &= validateDouble(gradeTotalLimitEl, 0, 12); allOk &= validateDouble(gradeTotalLimitEl, 0, 12);
allOk &= validateDouble(gradeSingleLimitEl, 0, 12); allOk &= validateDouble(gradeSingleLimitEl, 0, 12);
allOk &= validateInteger(lecturesTotalMinEl, 1, 10000);
allOk &= validateIsMandatory(minutesBeforeEndEl) && validateInteger(minutesBeforeEndEl, 0, 1000); allOk &= validateIsMandatory(minutesBeforeEndEl) && validateInteger(minutesBeforeEndEl, 0, 1000);
allOk &= validateIsMandatory(durationEl) && validateInteger(durationEl, 1, 10000); allOk &= validateIsMandatory(durationEl) && validateInteger(durationEl, 1, 10000);
allOk &= validateInteger(invitationDaysEl, 0, 10000); allOk &= validateInteger(invitationDaysEl, 0, 10000);
...@@ -181,6 +187,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -181,6 +187,7 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
titleEl.clearError(); titleEl.clearError();
gradeTotalLimitEl.clearError(); gradeTotalLimitEl.clearError();
gradeSingleLimitEl.clearError(); gradeSingleLimitEl.clearError();
lecturesTotalMinEl.clearError();
minutesBeforeEndEl.clearError(); minutesBeforeEndEl.clearError();
durationEl.clearError(); durationEl.clearError();
invitationDaysEl.clearError(); invitationDaysEl.clearError();
...@@ -210,6 +217,9 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi ...@@ -210,6 +217,9 @@ public class CourseLectureFollowUpProviderConfigController extends ProviderConfi
String singleLimit = gradeSingleLimitEl.getValue(); String singleLimit = gradeSingleLimitEl.getValue();
configs.setValue(CourseLecturesFollowUpProvider.CONFIG_KEY_GRADE_SINGLE_LIMIT, singleLimit); configs.setValue(CourseLecturesFollowUpProvider.CONFIG_KEY_GRADE_SINGLE_LIMIT, singleLimit);
String lecturesTotalMin = lecturesTotalMinEl.getValue();
configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MIN, lecturesTotalMin);
String minutesBeforeEnd = minutesBeforeEndEl.getValue(); String minutesBeforeEnd = minutesBeforeEndEl.getValue();
configs.setValue(CourseLecturesFollowUpProvider.CONFIG_KEY_MINUTES_BEFORE_END, minutesBeforeEnd); configs.setValue(CourseLecturesFollowUpProvider.CONFIG_KEY_MINUTES_BEFORE_END, minutesBeforeEnd);
......
...@@ -258,11 +258,11 @@ public class CourseLectureProviderConfigController extends ProviderConfigControl ...@@ -258,11 +258,11 @@ public class CourseLectureProviderConfigController extends ProviderConfigControl
String topicKey = topicEl.isOneSelected()? topicEl.getSelectedKey(): null; String topicKey = topicEl.isOneSelected()? topicEl.getSelectedKey(): null;
configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOPIC, topicKey); configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOPIC, topicKey);
String lecturesTotalMax = lecturesTotalMinEl.getValue(); String lecturesTotalMin = lecturesTotalMinEl.getValue();
configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MIN, lecturesTotalMax); configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MIN, lecturesTotalMin);
String lecturesTotalMin = lecturesTotalMaxEl.getValue(); String lecturesTotalMax = lecturesTotalMaxEl.getValue();
configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MAX, lecturesTotalMin); configs.setValue(CourseLecturesProvider.CONFIG_KEY_TOTAL_LECTURES_MAX, lecturesTotalMax);
if (surveyLectureStartEl.isOneSelected()) { if (surveyLectureStartEl.isOneSelected()) {
String selectedKey = surveyLectureStartEl.getSelectedKey(); String selectedKey = surveyLectureStartEl.getSelectedKey();
......
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