the list of checklists now shows if there has been a change since users last open

This commit is contained in:
Fredrik Friis 2012-04-12 14:01:40 +09:00
parent 17752d6827
commit 906a39096c

@ -1,7 +1,5 @@
package se.su.dsv.scipro.checklists.panels; package se.su.dsv.scipro.checklists.panels;
import java.util.List;
import org.apache.wicket.PageParameters; import org.apache.wicket.PageParameters;
import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.ajax.markup.html.AjaxLink;
@ -16,27 +14,21 @@ import org.apache.wicket.model.IModel;
import org.apache.wicket.model.LoadableDetachableModel; import org.apache.wicket.model.LoadableDetachableModel;
import org.apache.wicket.model.Model; import org.apache.wicket.model.Model;
import org.apache.wicket.spring.injection.annot.SpringBean; import org.apache.wicket.spring.injection.annot.SpringBean;
import se.su.dsv.scipro.SciProSession; import se.su.dsv.scipro.SciProSession;
import se.su.dsv.scipro.data.controllers.CheckListController; import se.su.dsv.scipro.data.controllers.CheckListController;
import se.su.dsv.scipro.data.dao.interfaces.CheckListDao; import se.su.dsv.scipro.data.dao.interfaces.*;
import se.su.dsv.scipro.data.dao.interfaces.ChecklistCategoryDao; import se.su.dsv.scipro.data.dataobjects.*;
import se.su.dsv.scipro.data.dao.interfaces.ProjectDao;
import se.su.dsv.scipro.data.dao.interfaces.ProjectScheduleEventDao;
import se.su.dsv.scipro.data.dao.interfaces.RoleDao;
import se.su.dsv.scipro.data.dataobjects.CheckList;
import se.su.dsv.scipro.data.dataobjects.CheckListAnswer;
import se.su.dsv.scipro.data.dataobjects.CheckListQuestion;
import se.su.dsv.scipro.data.dataobjects.Project;
import se.su.dsv.scipro.data.dataobjects.ProjectScheduleEvent;
import se.su.dsv.scipro.data.enums.CheckListQuestionAnswer; import se.su.dsv.scipro.data.enums.CheckListQuestionAnswer;
import se.su.dsv.scipro.data.enums.CheckListRole; import se.su.dsv.scipro.data.enums.CheckListRole;
import se.su.dsv.scipro.icons.ImageObject; import se.su.dsv.scipro.icons.ImageObject;
import se.su.dsv.scipro.project.pages.ProjectViewCheckListPage; import se.su.dsv.scipro.project.pages.ProjectViewCheckListPage;
import se.su.dsv.scipro.springdata.services.ChecklistService;
import se.su.dsv.scipro.supervisor.pages.SupervisorChecklistPage; import se.su.dsv.scipro.supervisor.pages.SupervisorChecklistPage;
import se.su.dsv.scipro.supervisor.pages.SupervisorViewCheckListPage; import se.su.dsv.scipro.supervisor.pages.SupervisorViewCheckListPage;
import se.su.dsv.scipro.util.JavascriptEventConfirmation; import se.su.dsv.scipro.util.JavascriptEventConfirmation;
import java.util.List;
/** /**
* @author Fredrik Norberg fnorbe@dsv.su.se * @author Fredrik Norberg fnorbe@dsv.su.se
* *
@ -53,6 +45,8 @@ public class ListCheckListPanel extends Panel {
private RoleDao roleDao; private RoleDao roleDao;
@SpringBean @SpringBean
private ProjectScheduleEventDao pseDao; private ProjectScheduleEventDao pseDao;
@SpringBean
private ChecklistService checklistService;
@SpringBean @SpringBean
CheckListController checkListController; CheckListController checkListController;
@ -91,7 +85,18 @@ public class ListCheckListPanel extends Panel {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@Override @Override
protected void populateItem(final ListItem<CheckList> item) { protected void populateItem(final ListItem<CheckList> item) {
Label listName = new Label("listName", item.getModel().getObject().getName());
Label listName;
if (checklistService.hasChangedSinceUserLastOpenDate(item.getModelObject(), SciProSession.get().getUser())){
listName = new Label("listName", item.getModel().getObject().getName() + " *change*");
} else {
listName = new Label("listName", item.getModel().getObject().getName());
}
final CheckList cl = item.getModelObject(); final CheckList cl = item.getModelObject();
final PageParameters pp = new PageParameters(); final PageParameters pp = new PageParameters();
pp.put("checklist", cl.getId()); pp.put("checklist", cl.getId());