Skip to content
Snippets Groups Projects
Commit 724ceca7 authored by Barbara B. Frosik's avatar Barbara B. Frosik
Browse files

Changed CrudEntityCOntroller, ExperimentContro;;er and experiment/view.xhtml...

Changed CrudEntityCOntroller, ExperimentContro;;er and experiment/view.xhtml to show only the list of experiment that the logged in user is part of
parent 4dba244b
No related branches found
No related tags found
No related merge requests found
......@@ -26,13 +26,11 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
private DataModel listDataModel = null;
private DataTable listDataTable = null;
// private boolean listDataModelReset = true;
private List<EntityType> filteredObjectList = null;
private DataModel selectDataModel = null;
private DataTable selectDataTable = null;
// private boolean selectDataModelReset = false;
private List<EntityType> selectedObjectList = null;
......@@ -73,7 +71,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
return current;
}
public String resetList() {
logger.debug("Resetting list");
return prepareList();
......@@ -106,20 +103,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
this.selectDataTable = selectDataTable;
}
// public boolean isAnyListFilterSet() {
// if (listDataTable == null) {
// return false;
// }
// Map<String, Object> filterMap = listDataTable.getFilters();
// for (Object filter : filterMap.values()) {
// if ((String)filter != null && !((String)filter).isEmpty()) {
// return true;
// }
// }
// return false;
// }
//
public String prepareView(EntityType entity) {
clear();
logger.debug("Preparing view");
......@@ -140,23 +123,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
return "create?faces-redirect=true";
}
// public EntityType cloneEntityInstance(EntityType entity) {
// EntityType clonedEntity;
// try {
// clonedEntity = (EntityType) (entity.clone());
// }
// catch (CloneNotSupportedException ex) {
// logger.error("Object cannot be cloned: " + ex);
// clonedEntity = createEntityInstance();
// }
// return clonedEntity;
// }
//
// public String prepareClone(EntityType entity) {
// current = cloneEntityInstance(entity);
// return "create?faces-redirect=true";
// }
//
protected void prepareEntityInsert(EntityType entity) throws DmPortalException {
}
......@@ -303,7 +269,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
public void resetListDataModel() {
listDataModel = null;
listDataTable = null;
// listDataModelReset = true;
filteredObjectList = null;
current = null;
}
......@@ -312,7 +277,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
selectDataModel = null;
selectDataTable = null;
selectedObjectList = null;
// selectDataModelReset = true;
}
public List<EntityType> getAvailableItems() {
......@@ -340,21 +304,4 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
return CollectionUtility.displayItemListWithoutOutsideDelimiters(entityList, itemDelimiter);
}
// public boolean isListDataModelReset() {
// if (listDataModelReset) {
// listDataModelReset = false;
// return true;
// }
// return false;
// }
//
// public boolean isSelectDataModelReset() {
// if (selectDataModelReset) {
// selectDataModelReset = false;
// return true;
// }
// return false;
// }
}
......@@ -22,6 +22,7 @@ import gov.anl.aps.dm.portal.model.entities.PolicyType;
import gov.anl.aps.dm.portal.model.entities.RoleType;
import gov.anl.aps.dm.portal.model.entities.UserExperimentRole;
import gov.anl.aps.dm.portal.model.entities.UserInfo;
import gov.anl.aps.dm.portal.utilities.CollectionUtility;
import gov.anl.aps.dm.portal.utilities.SessionUtility;
import java.util.ArrayList;
import java.util.Date;
......@@ -37,6 +38,9 @@ import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
import javax.faces.model.SelectItem;
import org.apache.log4j.Logger;
@Named("experimentController")
......@@ -391,9 +395,76 @@ public class ExperimentController extends CrudEntityController<Experiment, Exper
return "";
}
private boolean isAdmin(String username) {
return roleTypeFacade.findByName(RoleTypeName.ADMIN).isAdmin(username);
}
@Override
public DataModel createListDataModel() {
UserInfo logged = (UserInfo) SessionUtility.getUser();
if (logged == null) {
return null;
}
if (isAdmin(logged.getUsername())) {
return new ListDataModel(getFacade().findAll());
} else {
return new ListDataModel(userInfoFacade.findExperimentsInUser(logged.getId()));
}
}
@Override
public List<Experiment> getAvailableItems() {
return super.getAvailableItems();
UserInfo logged = (UserInfo) SessionUtility.getUser();
if (logged == null) {
return null;
}
if (isAdmin(logged.getUsername())) {
return getFacade().findAll();
} else {
return userInfoFacade.findExperimentsInUser(logged.getId());
}
}
@Override
public DataModel createSelectDataModel() {
UserInfo logged = (UserInfo) SessionUtility.getUser();
if (logged == null) {
return null;
}
List<Experiment> selectEntityList;
if (isAdmin(logged.getUsername())) {
selectEntityList = getFacade().findAll();
} else {
selectEntityList = userInfoFacade.findExperimentsInUser(logged.getId());
}
prepareEntityListForSelection(selectEntityList);
return new ListDataModel(selectEntityList);
}
@Override
public SelectItem[] getAvailableItemsForSelectMany() {
UserInfo logged = (UserInfo) SessionUtility.getUser();
if (logged == null) {
return null;
}
if (isAdmin(logged.getUsername())) {
return CollectionUtility.getSelectItems(getFacade().findAll(), false);
} else {
return CollectionUtility.getSelectItems(userInfoFacade.findExperimentsInUser(logged.getId()), false);
}
}
@Override
public SelectItem[] getAvailableItemsForSelectOne() {
UserInfo logged = (UserInfo) SessionUtility.getUser();
if (logged == null) {
return null;
}
if (isAdmin(logged.getUsername())) {
return CollectionUtility.getSelectItems(getFacade().findAll(), true);
} else {
return CollectionUtility.getSelectItems(userInfoFacade.findExperimentsInUser(logged.getId()), true);
}
}
@Override
......
......@@ -37,7 +37,7 @@
<p/>
<div class="actionButton">
<p:commandButton action="#{experimentController.prepareEdit(experimentObject)}" rendered="#{loginController.admin or experimentController.canEditExperiment(experimentObject.id)}" value="Edit" alt="Edit" icon="ui-icon-pencil"/>
<p:commandButton action="#{experimentController.prepareEdit(experimentObject)}" rendered="#{loginController.admin or experimentController.canEditExperiment(experimentObject)}" value="Edit" alt="Edit" icon="ui-icon-pencil"/>
<p:commandButton action="#{experimentController.prepareList()}" value="Return" alt="Return" icon="ui-icon-arrowreturnthick-1-w"/>
</div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment