3204 Show current reviewer in the project management page
This commit is contained in:
parent
9128cd40e5
commit
d6d51d7e34
view/src/main/java/se/su/dsv/scipro/datatables/project
10
view/src/main/java/se/su/dsv/scipro/datatables/project/ProjectDataPanel$ReviewerColumnCell.html
Normal file
10
view/src/main/java/se/su/dsv/scipro/datatables/project/ProjectDataPanel$ReviewerColumnCell.html
Normal file
@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org">
|
||||
<body>
|
||||
<wicket:panel>
|
||||
<span wicket:id="current_reviewer">[John Doe]</span>
|
||||
<br>
|
||||
<a wicket:id="link">(change reviewer)</a>
|
||||
</wicket:panel>
|
||||
</body>
|
||||
</html>
|
@ -12,6 +12,7 @@ import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvid
|
||||
import org.apache.wicket.feedback.FencedFeedbackPanel;
|
||||
import org.apache.wicket.markup.html.link.AbstractLink;
|
||||
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
|
||||
import org.apache.wicket.markup.html.panel.GenericPanel;
|
||||
import org.apache.wicket.markup.html.panel.Panel;
|
||||
import org.apache.wicket.markup.repeater.Item;
|
||||
import org.apache.wicket.model.IModel;
|
||||
@ -35,6 +36,7 @@ import se.su.dsv.scipro.datatables.AjaxCheckboxWrapper;
|
||||
import se.su.dsv.scipro.notifications.NotificationController;
|
||||
import se.su.dsv.scipro.notifications.dataobject.NotificationSource;
|
||||
import se.su.dsv.scipro.notifications.dataobject.ProjectEvent;
|
||||
import se.su.dsv.scipro.profile.UserLinkPanel;
|
||||
import se.su.dsv.scipro.project.Project;
|
||||
import se.su.dsv.scipro.project.ProjectService;
|
||||
import se.su.dsv.scipro.project.ProjectStatus;
|
||||
@ -163,12 +165,7 @@ public class ProjectDataPanel extends Panel {
|
||||
return new LambdaColumn<>(Model.of("Reviewer"), Project::getReviewer) {
|
||||
@Override
|
||||
public void populateItem(final Item<ICellPopulator<Project>> cellItem, final String componentId, final IModel<Project> rowModel) {
|
||||
cellItem.add(LinkWrapper.apply(componentId, id -> {
|
||||
PageParameters pp = AdminAssignReviewerPage.pageParametersFor(rowModel.getObject());
|
||||
final BookmarkablePageLink<Void> link = new BookmarkablePageLink<>(id, AdminAssignReviewerPage.class, pp);
|
||||
link.setBody(Model.of("Assign reviewer"));
|
||||
return link;
|
||||
}));
|
||||
cellItem.add(new ReviewerColumnCell(componentId, rowModel));
|
||||
}
|
||||
};
|
||||
}
|
||||
@ -216,4 +213,16 @@ public class ProjectDataPanel extends Panel {
|
||||
};
|
||||
add(newLink);
|
||||
}
|
||||
|
||||
private static class ReviewerColumnCell extends GenericPanel<Project> {
|
||||
public ReviewerColumnCell(String id, IModel<Project> project) {
|
||||
super(id, project);
|
||||
|
||||
add(new UserLinkPanel("current_reviewer", project.map(Project::getReviewer)));
|
||||
|
||||
PageParameters pp = AdminAssignReviewerPage.pageParametersFor(project.getObject());
|
||||
final BookmarkablePageLink<Void> link = new BookmarkablePageLink<>("link", AdminAssignReviewerPage.class, pp);
|
||||
add(link);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user