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

No commit message

No commit message
parent e254bfa2
No related branches found
No related tags found
No related merge requests found
Showing
with 114 additions and 89 deletions
...@@ -15,4 +15,5 @@ public class DmStatus ...@@ -15,4 +15,5 @@ public class DmStatus
public static final int DM_OBJECT_ALREADY_EXISTS = 6; public static final int DM_OBJECT_ALREADY_EXISTS = 6;
public static final int DM_OBJECT_NOT_FOUND = 7; public static final int DM_OBJECT_NOT_FOUND = 7;
public static final int DM_INVALID_DATE = 8; public static final int DM_INVALID_DATE = 8;
public static final int DM_MISSING_PROPERTY = 9;
} }
\ No newline at end of file
...@@ -77,13 +77,12 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F ...@@ -77,13 +77,12 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
public String resetList() { public String resetList() {
logger.debug("Resetting list"); logger.debug("Resetting list");
resetListDataModel();
return prepareList(); return prepareList();
} }
public String prepareList() { public String prepareList() {
logger.debug("Preparing list"); logger.debug("Preparing list");
current = null; resetListDataModel();
return "list?faces-redirect=true"; return "list?faces-redirect=true";
} }
...@@ -268,8 +267,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F ...@@ -268,8 +267,6 @@ public abstract class CrudEntityController<EntityType extends CloneableEntity, F
} }
public List<EntityType> getFilteredObjectList() { public List<EntityType> getFilteredObjectList() {
boolean isNull = (filteredObjectList == null);
logger.debug("filteredObjectList is null "+ isNull);
return filteredObjectList; return filteredObjectList;
} }
......
...@@ -63,6 +63,7 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im ...@@ -63,6 +63,7 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im
listDataTable = null; listDataTable = null;
listDataModelReset = true; listDataModelReset = true;
filteredObjectList = null; filteredObjectList = null;
selectedObjectList = null;
current = null; current = null;
} }
...@@ -99,7 +100,7 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im ...@@ -99,7 +100,7 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im
this.filteredObjectList = filteredObjectList; this.filteredObjectList = filteredObjectList;
} }
public List<EntityType> getFilteredItems() { public List<EntityType> getFilteredItems() {
return filteredObjectList; return filteredObjectList;
} }
...@@ -107,6 +108,10 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im ...@@ -107,6 +108,10 @@ public abstract class DataTableController<EntityType extends CloneableEntity> im
this.filteredObjectList = filteredItems; this.filteredObjectList = filteredItems;
} }
public void resetFilterList() {
filteredObjectList = null;
}
public boolean isListDataModelReset() { public boolean isListDataModelReset() {
if (listDataModelReset) { if (listDataModelReset) {
listDataModelReset = false; listDataModelReset = false;
......
...@@ -3,6 +3,7 @@ package gov.anl.aps.dm.portal.controllers; ...@@ -3,6 +3,7 @@ package gov.anl.aps.dm.portal.controllers;
import gov.anl.aps.dm.portal.exceptions.DmPortalException; import gov.anl.aps.dm.portal.exceptions.DmPortalException;
import gov.anl.aps.dm.portal.exceptions.ObjectAlreadyExists; import gov.anl.aps.dm.portal.exceptions.ObjectAlreadyExists;
import gov.anl.aps.dm.portal.exceptions.InvalidDate; import gov.anl.aps.dm.portal.exceptions.InvalidDate;
import gov.anl.aps.dm.portal.exceptions.MissingProperty;
import gov.anl.aps.dm.portal.model.entities.Experiment; import gov.anl.aps.dm.portal.model.entities.Experiment;
import gov.anl.aps.dm.portal.model.beans.ExperimentFacade; import gov.anl.aps.dm.portal.model.beans.ExperimentFacade;
import java.util.List; import java.util.List;
...@@ -63,7 +64,18 @@ public class ExperimentController extends CrudEntityController<Experiment, Exper ...@@ -63,7 +64,18 @@ public class ExperimentController extends CrudEntityController<Experiment, Exper
} }
@Override @Override
public void prepareEntityInsert(Experiment experiment) throws ObjectAlreadyExists, InvalidDate { public void prepareEntityInsert(Experiment experiment) throws ObjectAlreadyExists, InvalidDate, MissingProperty {
verifyExperiment(experiment);
logger.debug("Inserting new experiment " + experiment.getName());
}
@Override
public void prepareEntityUpdate(Experiment experiment) throws ObjectAlreadyExists, InvalidDate, MissingProperty {
verifyExperiment(experiment);
logger.debug("Updating experiment " + experiment.getName());
}
private void verifyExperiment(Experiment experiment) throws ObjectAlreadyExists, InvalidDate, MissingProperty {
Experiment existingExperiment = experimentFacade.findByName(experiment.getName()); Experiment existingExperiment = experimentFacade.findByName(experiment.getName());
if (existingExperiment != null) { if (existingExperiment != null) {
throw new ObjectAlreadyExists("Experiment " + experiment.getName() + " already exists."); throw new ObjectAlreadyExists("Experiment " + experiment.getName() + " already exists.");
...@@ -73,15 +85,9 @@ public class ExperimentController extends CrudEntityController<Experiment, Exper ...@@ -73,15 +85,9 @@ public class ExperimentController extends CrudEntityController<Experiment, Exper
throw new InvalidDate("Experiment end date is before start date."); throw new InvalidDate("Experiment end date is before start date.");
} }
logger.debug("Inserting new experiment " + experiment.getName()); if (experiment.getExperimentType() == null) {
} throw new MissingProperty("Experiment Type is missing.");
}
@Override
public void prepareEntityUpdate(Experiment experiment) throws DmPortalException {
super.prepareEntityUpdate(experiment);
if ((experiment.getStartDate() != null) && (experiment.getEndDate() != null) && (experiment.getEndDate().before(experiment.getStartDate()))) {
throw new InvalidDate("Experiment end date is before start date.");
}
} }
......
...@@ -72,7 +72,10 @@ public class ExperimentTypeController extends CrudEntityController<ExperimentTyp ...@@ -72,7 +72,10 @@ public class ExperimentTypeController extends CrudEntityController<ExperimentTyp
@Override @Override
public void prepareEntityUpdate(ExperimentType experimentType) throws DmPortalException { public void prepareEntityUpdate(ExperimentType experimentType) throws DmPortalException {
super.prepareEntityUpdate(experimentType); ExperimentType existingExperimentType = experimentTypeFacade.findByName(experimentType.getName());
if (existingExperimentType != null) {
throw new ObjectAlreadyExists("Experiment type " + experimentType.getName() + " already exists.");
}
} }
......
...@@ -77,7 +77,10 @@ public class RoleTypeController extends CrudEntityController<RoleType, RoleTypeF ...@@ -77,7 +77,10 @@ public class RoleTypeController extends CrudEntityController<RoleType, RoleTypeF
@Override @Override
public void prepareEntityUpdate(RoleType roleType) throws DmPortalException { public void prepareEntityUpdate(RoleType roleType) throws DmPortalException {
super.prepareEntityUpdate(roleType); RoleType existingRoleType = roleTypeFacade.findByName(roleType.getName());
if (existingRoleType != null) {
throw new ObjectAlreadyExists("Role Type " + roleType.getName() + " already exists.");
}
} }
public boolean isRoleSystemType(String name) { public boolean isRoleSystemType(String name) {
......
package gov.anl.aps.dm.portal.controllers; package gov.anl.aps.dm.portal.controllers;
import gov.anl.aps.dm.portal.exceptions.DmPortalException; import gov.anl.aps.dm.portal.exceptions.DmPortalException;
import gov.anl.aps.dm.portal.exceptions.InvalidDate;
import gov.anl.aps.dm.portal.exceptions.MissingProperty;
import gov.anl.aps.dm.portal.exceptions.ObjectAlreadyExists; import gov.anl.aps.dm.portal.exceptions.ObjectAlreadyExists;
import gov.anl.aps.dm.portal.model.entities.UserInfo; import gov.anl.aps.dm.portal.model.entities.UserInfo;
import gov.anl.aps.dm.portal.model.beans.UserInfoFacade; import gov.anl.aps.dm.portal.model.beans.UserInfoFacade;
import gov.anl.aps.dm.portal.model.entities.Experiment;
import gov.anl.aps.dm.portal.utilities.SessionUtility; import gov.anl.aps.dm.portal.utilities.SessionUtility;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -76,12 +79,16 @@ public class UserInfoController extends CrudEntityController<UserInfo, UserInfoF ...@@ -76,12 +79,16 @@ public class UserInfoController extends CrudEntityController<UserInfo, UserInfoF
} }
@Override @Override
public void prepareEntityUpdate(UserInfo user) throws DmPortalException { public void prepareEntityUpdate(UserInfo user) throws ObjectAlreadyExists {
if (passwordEntry != null && !passwordEntry.isEmpty()) { if (passwordEntry != null && !passwordEntry.isEmpty()) {
user.setPassword(passwordEntry); user.setPassword(passwordEntry);
} }
passwordEntry = null; passwordEntry = null;
super.prepareEntityUpdate(user);
UserInfo existingUserInfo = userInfoFacade.findByUsername(user.getUsername());
if (existingUserInfo != null) {
throw new ObjectAlreadyExists("User " + user.getUsername() + " already exists.");
}
} }
public String prepareSessionUserEdit(String viewPath) { public String prepareSessionUserEdit(String viewPath) {
......
...@@ -75,7 +75,7 @@ public class UserSystemRoleController implements Serializable ...@@ -75,7 +75,7 @@ public class UserSystemRoleController implements Serializable
private String systemRoleId; private String systemRoleId;
private static final Logger logger = Logger.getLogger(UserSystemRoleController.class.getName()); private static final Logger logger = Logger.getLogger(UserSystemRoleController.class.getName());
public SystemRoleTypeTable getSystemRoleTable() { public SystemRoleTypeTable getSystemRoleTable() {
...@@ -94,7 +94,7 @@ public class UserSystemRoleController implements Serializable ...@@ -94,7 +94,7 @@ public class UserSystemRoleController implements Serializable
this.noSystemRoleTable = noSystemRoleTable; this.noSystemRoleTable = noSystemRoleTable;
} }
public String getSystemRoleId() { public String getSystemRoleId() {
return systemRoleId; return systemRoleId;
} }
...@@ -120,7 +120,6 @@ public class UserSystemRoleController implements Serializable ...@@ -120,7 +120,6 @@ public class UserSystemRoleController implements Serializable
} }
public boolean hasSystemRole(String user) { public boolean hasSystemRole(String user) {
logger.debug("in hasSystemRole username, roleId "+ user+" "+systemRoleId);
int id = Integer.parseInt(systemRoleId); int id = Integer.parseInt(systemRoleId);
RoleType rt = roleTypeFacade.findById(id); RoleType rt = roleTypeFacade.findById(id);
if (rt == null) { if (rt == null) {
...@@ -131,7 +130,8 @@ public class UserSystemRoleController implements Serializable ...@@ -131,7 +130,8 @@ public class UserSystemRoleController implements Serializable
public String prepareSystemRoleView() { public String prepareSystemRoleView() {
logger.debug("Preparing system role view"); logger.debug("Preparing system role view");
return "/views/userSystemRole/list?faces-redirect=true"; noSystemRoleTable.resetList();
return resetSystemRoleUserList();
} }
public String addSystemRole() { public String addSystemRole() {
...@@ -169,6 +169,7 @@ public class UserSystemRoleController implements Serializable ...@@ -169,6 +169,7 @@ public class UserSystemRoleController implements Serializable
} }
try { try {
roleTypeFacade.edit(rt); roleTypeFacade.edit(rt);
resetNoSystemRoleUserList();
return resetSystemRoleUserList(); return resetSystemRoleUserList();
} }
catch (RuntimeException ex) { catch (RuntimeException ex) {
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package gov.anl.aps.dm.portal.exceptions;
import gov.anl.aps.dm.portal.constants.DmStatus;
/**
*
* @author bfrosik
*/
public class MissingProperty extends DmPortalException
{
/**
* Constructor.
*/
public MissingProperty()
{
super();
setErrorCode(DmStatus.DM_MISSING_PROPERTY);
}
/**
* Constructor.
*
* @param message Error message
*/
public MissingProperty(String message)
{
super(message);
setErrorCode(DmStatus.DM_MISSING_PROPERTY);
}
/**
* Constructor.
*
* @param throwable Throwable object
*/
public MissingProperty(Throwable throwable)
{
super(throwable);
setErrorCode(DmStatus.DM_MISSING_PROPERTY);
}
/**
* Constructor.
*
* @param message Error message
* @param throwable Throwable object
*/
public MissingProperty(String message, Throwable throwable)
{
super(message, throwable);
setErrorCode(DmStatus.DM_MISSING_PROPERTY);
}
}
...@@ -226,61 +226,6 @@ a:link:hover, a:visited:hover { ...@@ -226,61 +226,6 @@ a:link:hover, a:visited:hover {
width: 300px; width: 300px;
} }
.systemRoleAddTable {
}
.systemRoleAddTable td:nth-child(1) {
width: 16px;
text-align:center;
}
.systemRoleAddTable td:nth-child(2) {
width: 100px;
}
.systemRoleAddTable td:nth-child(3) {
width: 120px;
}
.systemRoleAddTable td:nth-child(4) {
width: 120px;
}
.systemRoleAddTable td:nth-child(5) {
width: 200px;
}
.systemRoleTable {
}
.systemRoleTable td:nth-child(1) {
width: 16px;
text-align:center;
}
.systemRoleTable td:nth-child(2) {
width: 100px;
}
.systemRoleTable td:nth-child(3) {
width: 120px;
}
.systemRoleTable td:nth-child(4) {
width: 120px;
}
.systemRoleTable td:nth-child(5) {
width: 200px;
}
.systemRoleTable td:nth-child(7) {
width: 150px;
visibility:visible;
}
.entityLogList td:last-child { .entityLogList td:last-child {
width: 195px; width: 195px;
} }
......
...@@ -57,10 +57,10 @@ ...@@ -57,10 +57,10 @@
<h:form prependId="false"> <h:form prependId="false">
<p:menubar> <p:menubar>
<p:menuitem value="Home" url="/views/home.xhtml" icon="ui-icon-home"/> <p:menuitem value="Home" url="/views/home.xhtml" icon="ui-icon-home"/>
<p:menuitem value="Experiments" url="/views/experiment/list.xhtml"/>
<p:menuitem value="Users" url="/views/userInfo/list.xhtml"/>
<p:menuitem value="Experiment Types" url="/views/experimentType/list.xhtml"/> <p:menuitem value="Experiment Types" url="/views/experimentType/list.xhtml"/>
<p:menuitem value="Role Types" url="/views/roleType/list.xhtml"/> <p:menuitem value="Role Types" url="/views/roleType/list.xhtml"/>
<p:menuitem value="Users" url="/views/userInfo/list.xhtml"/>
<p:menuitem value="Experiments" url="/views/experiment/list.xhtml"/>
<p:menuitem value="Login" onclick="PF('loginDialog').show();" rendered="#{!loginController.loggedIn}" icon="ui-icon-person"/> <p:menuitem value="Login" onclick="PF('loginDialog').show();" rendered="#{!loginController.loggedIn}" icon="ui-icon-person"/>
<p:menuitem value="Logout" action="#{loginController.logout()}" rendered="#{loginController.loggedIn}" icon="ui-icon-close"/> </p:menubar> <p:menuitem value="Logout" action="#{loginController.logout()}" rendered="#{loginController.loggedIn}" icon="ui-icon-close"/> </p:menubar>
</h:form> </h:form>
......
...@@ -23,8 +23,6 @@ ...@@ -23,8 +23,6 @@
<ui:include src="roleTypeDestroyDialog.xhtml"/> <ui:include src="roleTypeDestroyDialog.xhtml"/>
<h:outputScript library="js/roleType" name="list.filter.js" rendered="#{loginController.loggedIn}"/>
</h:form> </h:form>
</ui:define> </ui:define>
......
...@@ -16,12 +16,12 @@ ...@@ -16,12 +16,12 @@
<h:form id="adminListForm"> <h:form id="adminListForm">
<div class="actionButton"> <div class="actionButton">
<p:commandButton id="systemRoleAddButton" onclick="PF('systemRoleAddDialogWidget').show();" rendered="#{userSystemRoleController.hasSystemRole(loginController.username)}" icon="ui-icon-plus"> <p:commandButton id="systemRoleAddButton" onclick="PF('systemRoleAddDialogWidget').show();" rendered="#{userSystemRoleController.hasSystemRole(loginController.username)}" icon="ui-icon-plus" >
<p:tooltip for="systemRoleAddButton" value="Add new Administrators."/> <p:tooltip for="systemRoleAddButton" value="Add new Administrators."/>
</p:commandButton> </p:commandButton>
<p:commandButton id="#{UserInfo}ResetFiltersButton" action="#{userSystemRoleController.resetSystemRoleUserList()}" alt="Clear Filters" icon="ui-icon-refresh" styleClass="actionButtonRight"> <p:commandButton id="ResetFiltersButton" action="#{userSystemRoleController.resetSystemRoleUserList()}" alt="Clear Filters" icon="ui-icon-refresh" styleClass="actionButtonRight">
<p:tooltip for="#{UserInfo}ResetFiltersButton" value="Reset list filters."/> <p:tooltip for="ResetFiltersButton" value="Reset list filters."/>
</p:commandButton> </p:commandButton>
</div> </div>
......
...@@ -11,10 +11,10 @@ ...@@ -11,10 +11,10 @@
<p:dialog id="adminAddDialog" <p:dialog id="adminAddDialog"
header="Add Administrators" widgetVar="systemRoleAddDialogWidget" > header="Add Administrators" widgetVar="systemRoleAddDialogWidget" dynamic="true" styleClass="dialog" width="800">
<div class="actionButton"> <div class="actionButton">
<p:commandButton id="ResetFilters" action="#{userSystemRoleController.resetNoSystemRoleUserList()}" update="adminAddDialog" onsuccess="systemRoleAddTableWidgetVar.show()" alt="Clear Filters" icon="ui-icon-refresh" styleClass="actionButtonRight"> <p:commandButton id="ResetFilters" actionListener="#{userSystemRoleController.noSystemRoleTable.resetFilterList()}" alt="Clear Filters" icon="ui-icon-refresh" styleClass="actionButtonRight" oncomplete="PF('systemRoleAddDialogWidget').show()" update="adminAddDialog" >
<p:tooltip for="ResetFilters" value="Reset list filters."/> <p:tooltip for="ResetFilters" value="Reset list filters."/>
</p:commandButton> </p:commandButton>
</div> </div>
...@@ -32,7 +32,6 @@ ...@@ -32,7 +32,6 @@
rowKey="#{adminUser.username}" rowKey="#{adminUser.username}"
widgetVar="systemRoleAddTableWidgetVar" widgetVar="systemRoleAddTableWidgetVar"
emptyMessage="No users to add." emptyMessage="No users to add."
tableStyleClass="systemRoleTable"
rowSelectMode="true" rowSelectMode="true"
selectionMode="multiple" > selectionMode="multiple" >
...@@ -57,7 +56,7 @@ ...@@ -57,7 +56,7 @@
</p:column> </p:column>
<f:facet name="footer"> <f:facet name="footer">
<p:commandButton value="Add Adminstrators" actionListener="#{userSystemRoleController.addSystemRole()}" oncomplete="PF('systemRoleAddDialogWidget').hide()" /> <p:commandButton value="Add" action="#{userSystemRoleController.addSystemRole()}" oncomplete="PF('systemRoleAddDialogWidget').hide()" />
<p:commandButton value="Clear Selection" onclick="PF('systemRoleAddTableWidgetVar').unselectAllRows()" /> <p:commandButton value="Clear Selection" onclick="PF('systemRoleAddTableWidgetVar').unselectAllRows()" />
</f:facet> </f:facet>
</p:dataTable> </p:dataTable>
......
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