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( public record GradingReportTemplateUpdate(
LocalDate validFrom, LocalDate validFrom,
@Nullable String note, @Nullable String note,
String defaultGrade, String failingGrade,
List<Grade> grades, List<Grade> grades,
List<Criteria> criteria) List<Criteria> criteria)
{ {
public GradingReportTemplateUpdate { public GradingReportTemplateUpdate {
Objects.requireNonNull(validFrom, "Valid from must not be null"); 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(grades, "Grades must not be null");
Objects.requireNonNull(criteria, "Criteria 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( return new GradingReportTemplateUpdate(
editingGradingTemplate.getValidFrom(), editingGradingTemplate.getValidFrom(),
editingGradingTemplate.getNote(), editingGradingTemplate.getNote(),
editingGradingTemplate.getGradeLimits().getDefaultGrade(), editingGradingTemplate.getGradeLimits().getFailingGrade(),
grades, grades,
criteria); criteria);
} }

View File

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

View File

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

View File

@ -1,7 +1,7 @@
Flag.OPPOSITION=Final seminar opposition Flag.OPPOSITION=Final seminar opposition
Flag.REFLECTION=Reflection Flag.REFLECTION=Reflection
max_points_available=The maximum number of points available is ${max_points_available} with the below criteria. 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_sv.Required=You must set the swedish title for all criteria
title_en.Required=You must set the english 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 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 { class GradeLimits implements Serializable {
private List<GradeLimit> gradeLimits; private List<GradeLimit> gradeLimits;
private String defaultGrade; private String failingGrade;
GradeLimits() { GradeLimits() {
this.gradeLimits = new ArrayList<>(); this.gradeLimits = new ArrayList<>();
@ -16,12 +16,12 @@ class GradeLimits implements Serializable {
getGradeLimits().add(new GradeLimit()); getGradeLimits().add(new GradeLimit());
} }
public String getDefaultGrade() { public String getFailingGrade() {
return defaultGrade; return failingGrade;
} }
public void setDefaultGrade(String defaultGrade) { public void setFailingGrade(String failingGrade) {
this.defaultGrade = defaultGrade; this.failingGrade = failingGrade;
} }
public List<GradeLimit> getGradeLimits() { public List<GradeLimit> getGradeLimits() {