Allows admins to manage grading report templates #14

Merged
niat8586 merged 41 commits from 3482-new-grading-criteria into develop 2024-10-30 10:05:23 +01:00
6 changed files with 14 additions and 14 deletions
Showing only changes of commit 23f9ea114d - Show all commits

View File

@ -9,13 +9,13 @@ import java.util.Objects;
public record GradingReportTemplateUpdate(
LocalDate validFrom,
@Nullable String note,
String defaultGrade,
String failingGrade,
List<Grade> grades,
List<Criteria> criteria)
{
public GradingReportTemplateUpdate {
Objects.requireNonNull(validFrom, "Valid from must not be null");
Objects.requireNonNull(defaultGrade, "Default grade must not be null");
Objects.requireNonNull(failingGrade, "Failing grade must not be null");
Objects.requireNonNull(grades, "Grades must not be null");
Objects.requireNonNull(criteria, "Criteria must not be null");

View File

@ -81,7 +81,7 @@ public class AdminGradingTemplateEditPage extends AbstractAdminProjectPage imple
return new GradingReportTemplateUpdate(
editingGradingTemplate.getValidFrom(),
editingGradingTemplate.getNote(),
editingGradingTemplate.getGradeLimits().getDefaultGrade(),
editingGradingTemplate.getGradeLimits().getFailingGrade(),
grades,
criteria);
}

View File

@ -37,8 +37,8 @@
The authors will receive the grade associated with the highest minimum point requirement they met.
</p>
<div class="mb-3">
<label class="form-label" wicket:for="default_grade">Default grade</label>
<input required type="text" class="form-control" wicket:id="default_grade">
<label class="form-label" wicket:for="failing_grade">Failing grade</label>
<input required type="text" class="form-control" wicket:id="failing_grade">
<small class="text-muted">The grade they receive if they do not meet the minimum points for any other grade.</small>
</div>

View File

@ -214,10 +214,10 @@ class EditingGradingTemplateComponentPanel extends GenericPanel<EditingGradingTe
setOutputMarkupId(true);
add(new RequiredTextField<>("default_grade", LambdaModel.of(
add(new RequiredTextField<>("failing_grade", LambdaModel.of(
model,
GradeLimits::getDefaultGrade,
GradeLimits::setDefaultGrade)) {
GradeLimits::getFailingGrade,
GradeLimits::setFailingGrade)) {
{
add(new AutoSave());
}

View File

@ -1,7 +1,7 @@
Flag.OPPOSITION=Final seminar opposition
Flag.REFLECTION=Reflection
max_points_available=The maximum number of points available is ${max_points_available} with the below criteria.
default_grade.Required=You must set the default grade.
failing_grade.Required=You must set the failing grade.
title_sv.Required=You must set the swedish title for all criteria
title_en.Required=You must set the english title for all criteria
requirement_sv.Required=You must set the swedish requirement for every criteria point

View File

@ -6,7 +6,7 @@ import java.util.List;
class GradeLimits implements Serializable {
private List<GradeLimit> gradeLimits;
private String defaultGrade;
private String failingGrade;
GradeLimits() {
this.gradeLimits = new ArrayList<>();
@ -16,12 +16,12 @@ class GradeLimits implements Serializable {
getGradeLimits().add(new GradeLimit());
}
public String getDefaultGrade() {
return defaultGrade;
public String getFailingGrade() {
return failingGrade;
}
public void setDefaultGrade(String defaultGrade) {
this.defaultGrade = defaultGrade;
public void setFailingGrade(String failingGrade) {
this.failingGrade = failingGrade;
}
public List<GradeLimit> getGradeLimits() {