Allow changes to the reflection to be made after it's been submitted #13
@ -49,10 +49,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</wicket:fragment>
|
</wicket:fragment>
|
||||||
</div>
|
</div>
|
||||||
<wicket:container wicket:id="reflection">
|
<div wicket:id="reflection">
|
||||||
|
<wicket:enclosure>
|
||||||
|
<div class="alert alert-danger">
|
||||||
|
<h4 class="alert-heading">Improvements requested</h4>
|
||||||
|
<wicket:container wicket:id="improvementsNeeded"/>
|
||||||
|
</div>
|
||||||
|
</wicket:enclosure>
|
||||||
<a wicket:id="showReflection" href="#">View reflection</a>
|
<a wicket:id="showReflection" href="#">View reflection</a>
|
||||||
<div wicket:id="modal"></div>
|
<div wicket:id="modal"></div>
|
||||||
</wicket:container>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</wicket:panel>
|
</wicket:panel>
|
||||||
</body>
|
</body>
|
||||||
|
@ -30,6 +30,7 @@ import se.su.dsv.scipro.finalseminar.FinalSeminar;
|
|||||||
import se.su.dsv.scipro.finalseminar.FinalSeminarOpposition;
|
import se.su.dsv.scipro.finalseminar.FinalSeminarOpposition;
|
||||||
import se.su.dsv.scipro.finalseminar.FinalSeminarService;
|
import se.su.dsv.scipro.finalseminar.FinalSeminarService;
|
||||||
import se.su.dsv.scipro.project.Project;
|
import se.su.dsv.scipro.project.Project;
|
||||||
|
import se.su.dsv.scipro.reflection.Reflection;
|
||||||
import se.su.dsv.scipro.reflection.ReflectionService;
|
import se.su.dsv.scipro.reflection.ReflectionService;
|
||||||
import se.su.dsv.scipro.report.AbstractGradingCriterion;
|
import se.su.dsv.scipro.report.AbstractGradingCriterion;
|
||||||
import se.su.dsv.scipro.report.GradingCriterion;
|
import se.su.dsv.scipro.report.GradingCriterion;
|
||||||
@ -265,9 +266,18 @@ public class CriteriaPanel extends GenericPanel<SupervisorGradingReport> {
|
|||||||
super(id, author);
|
super(id, author);
|
||||||
this.gradingCriterion = gradingCriterion;
|
this.gradingCriterion = gradingCriterion;
|
||||||
|
|
||||||
IModel<String> reflection = LoadableDetachableModel.of(() -> {
|
IModel<Reflection> reflection = LoadableDetachableModel.of(() -> {
|
||||||
Project project = CriteriaPanel.this.getModelObject().getProject();
|
Project project = CriteriaPanel.this.getModelObject().getProject();
|
||||||
return reflectionService.getSubmittedReflection(project, author.getObject());
|
return reflectionService.getReflection(project, author.getObject());
|
||||||
|
});
|
||||||
|
IModel<String> improvementsNeeded = reflection.as(Reflection.ImprovementsNeeded.class)
|
||||||
|
.map(Reflection.ImprovementsNeeded::commentBySupervisor);
|
||||||
|
add(new MultiLineLabel("improvementsNeeded", improvementsNeeded) {
|
||||||
|
@Override
|
||||||
|
protected void onConfigure() {
|
||||||
|
super.onConfigure();
|
||||||
|
setVisible(!getDefaultModelObjectAsString().isBlank());
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
modal = new LargeModalWindow("modal");
|
modal = new LargeModalWindow("modal");
|
||||||
@ -276,6 +286,11 @@ public class CriteriaPanel extends GenericPanel<SupervisorGradingReport> {
|
|||||||
IModel<Project> projectModel = CriteriaPanel.this.getModel().map(GradingReport::getProject);
|
IModel<Project> projectModel = CriteriaPanel.this.getModel().map(GradingReport::getProject);
|
||||||
return new ReflectionModalBodyPanel(modalBodyId, projectModel, author);
|
return new ReflectionModalBodyPanel(modalBodyId, projectModel, author);
|
||||||
});
|
});
|
||||||
|
this.setOutputMarkupId(true);
|
||||||
|
this.setOutputMarkupPlaceholderTag(true);
|
||||||
|
modal.onClose(target -> {
|
||||||
|
target.add(ReflectionFeedbackPanel.this);
|
||||||
|
});
|
||||||
add(modal);
|
add(modal);
|
||||||
|
|
||||||
WebMarkupContainer showReflection = new WebMarkupContainer("showReflection") {
|
WebMarkupContainer showReflection = new WebMarkupContainer("showReflection") {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user