2984 PO 7) Add mininum point requirement to grading basis
This commit is contained in:
parent
19efe7b343
commit
8a0529e98a
view/src/main/java/se/su/dsv/scipro/grading
@ -18,6 +18,8 @@ import org.apache.wicket.markup.html.panel.Fragment;
|
||||
import org.apache.wicket.markup.html.panel.GenericPanel;
|
||||
import org.apache.wicket.model.IModel;
|
||||
import org.apache.wicket.model.LoadableDetachableModel;
|
||||
import org.apache.wicket.model.ResourceModel;
|
||||
import org.apache.wicket.model.StringResourceModel;
|
||||
import se.su.dsv.scipro.components.BootstrapRadioChoice;
|
||||
import se.su.dsv.scipro.components.DateLabel;
|
||||
import se.su.dsv.scipro.components.LargeModalWindow;
|
||||
@ -28,6 +30,7 @@ import se.su.dsv.scipro.finalseminar.FinalSeminarOpposition;
|
||||
import se.su.dsv.scipro.finalseminar.FinalSeminarService;
|
||||
import se.su.dsv.scipro.project.Project;
|
||||
import se.su.dsv.scipro.reflection.ReflectionService;
|
||||
import se.su.dsv.scipro.report.AbstractGradingCriterion;
|
||||
import se.su.dsv.scipro.report.GradingCriterion;
|
||||
import se.su.dsv.scipro.report.GradingCriterionPoint;
|
||||
import se.su.dsv.scipro.report.SupervisorGradingReport;
|
||||
@ -63,7 +66,10 @@ public class CriteriaPanel extends GenericPanel<SupervisorGradingReport> {
|
||||
grading.setOutputMarkupId(true);
|
||||
item.add(grading);
|
||||
item.add(new Label(TITLE, item.getModel().map(isSwedish ? GradingCriterion::getTitle : GradingCriterion::getTitleEn)));
|
||||
grading.add(new Label(MAX_POINTS, getPointsString(item.getModelObject())));
|
||||
grading.add(new Label(MAX_POINTS,
|
||||
new StringResourceModel(
|
||||
"point_requirement",
|
||||
item.getModel().map(AbstractGradingCriterion::getPointsRequiredToPass))));
|
||||
|
||||
IModel<List<GradingCriterionPoint>> gradingCriterionPoints = item.getModel().map(GradingCriterion::getGradingCriterionPoints);
|
||||
RadioChoice<GradingCriterionPoint> pointsRadioChoice = new BootstrapRadioChoice<>(
|
||||
@ -223,10 +229,6 @@ public class CriteriaPanel extends GenericPanel<SupervisorGradingReport> {
|
||||
}
|
||||
}
|
||||
|
||||
private String getPointsString(GradingCriterion criterion) {
|
||||
return "(*" + criterion.getPointsRequiredToPass() + "* is required to pass)";
|
||||
}
|
||||
|
||||
private static final class GradingCriterionPointsModelConverter implements IModel<GradingCriterionPoint> {
|
||||
private final IModel<GradingCriterion> criterionIModel;
|
||||
|
||||
|
@ -23,14 +23,19 @@
|
||||
<legend wicket:id="title">
|
||||
[U1 Abstract]
|
||||
</legend>
|
||||
|
||||
<div wicket:id="points"></div>
|
||||
<!-- pass/fail criteria: render checkbox -->
|
||||
<div class="form-check" wicket:enclosure="pf">
|
||||
<input type="checkbox" class="form-check-input" wicket:id="pf">
|
||||
<label class="form-check-label" wicket:for="pf">
|
||||
<div wicket:id="pfCriteria"></div>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<!-- other criteria: render radio buttons -->
|
||||
<wicket:enclosure child="points">
|
||||
<strong>Points: </strong> <span wicket:id="point_requirement"></span>
|
||||
<div wicket:id="points"></div>
|
||||
</wicket:enclosure>
|
||||
</fieldset>
|
||||
<div>
|
||||
<label class="col-form-label" wicket:for="overall_motivation">
|
||||
|
@ -16,6 +16,7 @@ import org.apache.wicket.model.IModel;
|
||||
import org.apache.wicket.model.LambdaModel;
|
||||
import org.apache.wicket.model.LoadableDetachableModel;
|
||||
import org.apache.wicket.model.Model;
|
||||
import org.apache.wicket.model.StringResourceModel;
|
||||
import se.su.dsv.scipro.components.BootstrapRadioChoice;
|
||||
import se.su.dsv.scipro.components.ScrollSneakBehavior;
|
||||
import se.su.dsv.scipro.grading.GradingBasis.Assessment;
|
||||
@ -55,6 +56,10 @@ public class GradingBasisPanel extends GenericPanel<Project> {
|
||||
protected void populateItem(ListItem<Assessment> item) {
|
||||
IModel<Criterion> criteriaModel = item.getModel().map(Assessment::criterion);
|
||||
item.add(new Label("title", criteriaModel.map(Criterion::title)));
|
||||
item.add(new Label("point_requirement",
|
||||
new StringResourceModel(
|
||||
"point_requirement",
|
||||
criteriaModel.map(Criterion::minimumPoints))));
|
||||
|
||||
IModel<List<Requirement>> requirements = criteriaModel.map(Criterion::requirements);
|
||||
RadioChoice<Requirement> pointsRadioChoice = new BootstrapRadioChoice<>(
|
||||
|
@ -0,0 +1 @@
|
||||
point_requirement=(*${}* is required to pass)
|
Loading…
x
Reference in New Issue
Block a user