Author: DavidK Date: 2010-02-25 15:01:30 +0100 (Thu, 25 Feb 2010) New Revision: 1872 Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/companyrel/CompanyPermittedTypesBean.java trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties trunk/server/webServer2/WebContent/secured/companyrel/selectPermittedTypeForm.xhtml Log: now permitted type of company can be removed Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/companyrel/CompanyPermittedTypesBean.java =================================================================== --- trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/companyrel/CompanyPermittedTypesBean.java 2010-02-25 13:57:07 UTC (rev 1871) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/companyrel/CompanyPermittedTypesBean.java 2010-02-25 14:01:30 UTC (rev 1872) @@ -22,16 +22,17 @@ private static Logger log = null; // fields - List<ContentType> permittedTypes = null; - List<ContentType> notPermittedTypes = null; - Integer fullPositionCount = -1; - /*set from view*/ Company selectedComp = null; - /*set from view*/ ContentType selectedCt = null; + private List<ContentType> permittedTypes = null; + private List<ContentType> notPermittedTypes = null; + private Integer fullPositionCount = -1; + /*set from view*/ private Company selectedComp = null; + /*set from view*/ private ContentType selectedCt = null; // messages private static final String COMPANY_NOT_SET = "Company object not set to the bean!!"; private static final String CONTENT_TYPE_NOT_SET = "ContentType object not set to the bean!!"; private static final String CANNOT_ADD_TYPE = "Cannot permit the company to use selected type.."; + private static final String CANNOT_REMOVE_TYPE = "Couldn't remove permitted type from the company.."; public List<ContentType> getPermittedTypes() { return permittedTypes; @@ -97,9 +98,10 @@ /** - * make company permitted to use selected type + * permit company to use selected type */ public void addPermittedType() { + // check contract if (selectedComp == null || !Hibernate.isInitialized(selectedComp)) { String message = CommonUtils.prepareErrorMessage(COMPANY_NOT_SET); throw new NullPointerException(message); @@ -108,6 +110,9 @@ String message = CommonUtils.prepareErrorMessage(CONTENT_TYPE_NOT_SET); throw new NullPointerException(message); } + + + Integer compId = selectedComp.getId(); Integer contId = selectedCt.getId(); PermittedSchedulingBL bl = Factory.getPermittedSchedulingBL(); @@ -122,7 +127,35 @@ } } + /** + * ban the company to use selected permitted type + */ + public void removePermittedType() { + // check contract + if (selectedComp == null || !Hibernate.isInitialized(selectedComp)) { + String message = CommonUtils.prepareErrorMessage(COMPANY_NOT_SET); + throw new NullPointerException(message); + } + if (selectedCt == null || !Hibernate.isInitialized(selectedCt)) { + String message = CommonUtils.prepareErrorMessage(CONTENT_TYPE_NOT_SET); + throw new NullPointerException(message); + } + + Integer compId = selectedComp.getId(); + Integer contId = selectedCt.getId(); + PermittedSchedulingBL bl = Factory.getPermittedSchedulingBL(); + try { + bl.removeCompanyPermittedType(compId, contId); + prepareBean(); + } catch(Exception e) { + String mes = CommonUtils.prepareErrorMessage(CANNOT_REMOVE_TYPE, + "companyId", compId, "contentId", contId); + log.error(mes,e); + throw new RuntimeException(mes,e); + } + } + // // /** // * navigate to the list of companies @@ -152,4 +185,22 @@ } } + public static class RemovePermittedTypeActionListener implements ActionListener { + @Override + public void processAction(ActionEvent arg0) + throws AbortProcessingException { + + try { + BeanManager.getCompanyPermittedTypesBean().removePermittedType(); + + } catch (Exception e) { + throw new AbortProcessingException(e); + } + + } + + + } + + } Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties =================================================================== --- trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties 2010-02-25 13:57:07 UTC (rev 1871) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties 2010-02-25 14:01:30 UTC (rev 1872) @@ -111,7 +111,8 @@ company.permtypes.form.fullpositioncount=Po\u010Det zasa\u017Een\u00FDch pozic v p\u0159\u00EDpad\u011B p\u0159id\u00E1n\u00ED nov\u00E9ho povolen\u00E9ho typu company.permtypes.form.permittedlist=Seznam povolen\u00FDch typ\u016F company.permtypes.form.notpermittedlist=Seznam dal\u0161\u00EDch mo\u017En\u00FDch typ\u016F pro povolen\u00ED -company.permtypes.form.permit.tooltip=Povol\u00ED spole\u010Dnosti pou\u017E\u00EDv\u00E1n\u00ED dan\u00E9ho typu +company.permtypes.form.permit.tooltip=Povolit spole\u010Dnosti pou\u017E\u00EDvat dan\u00FD typ pl\u00E1nov\u00E1n\u00ED +company.permtypes.form.revoke.tooltip Odebrat spol\u010Dnosti mo\u017Enost pou\u017E\u00EDvat dan\u00FD typ pl\u00E1nov\u00E1n\u00ED company.permtypes.form.backtolistofcompanies=Zp\u011Bt na seznam spole\u010Dnost\u00ED user.list.title=Seznam u\u017Eivatel\u016F Modified: trunk/server/webServer2/WebContent/secured/companyrel/selectPermittedTypeForm.xhtml =================================================================== --- trunk/server/webServer2/WebContent/secured/companyrel/selectPermittedTypeForm.xhtml 2010-02-25 13:57:07 UTC (rev 1871) +++ trunk/server/webServer2/WebContent/secured/companyrel/selectPermittedTypeForm.xhtml 2010-02-25 14:01:30 UTC (rev 1872) @@ -22,15 +22,30 @@ <h:outputText value="#{lbl['company.permtypes.form.fullpositioncount']}: " /> <b><h:outputText value="#{companyPermittedTypesBean.fullPositionCount}" /></b> <br/> + + <!-- PANEL WITH PERMITTED TYPES --> <h:panelGrid id="PermittedTypesPanel"> <h:outputText value="#{lbl['company.permtypes.form.permittedlist']}"/> <rich:dataList id="ListOfPermittedTypes" var="type" value="#{companyPermittedTypesBean.permittedTypes}" rows="0"> - <h:outputText value="#{type.type}"/><br/> + <a4j:commandLink + id="RevokePermittedType" + value="#{type.type}" + immediate="true" + reRender="SetPermittedTypesForm"> + <f:setPropertyActionListener value="#{type}" target="#{companyPermittedTypesBean.selectedCt}" /> + <f:actionListener type="cz.elvys.webServer.beans.companyrel.CompanyPermittedTypesBean$RemovePermittedTypeActionListener"/> + </a4j:commandLink> + + <rich:toolTip for="RevokePermittedType"> + <h:outputText value="#{lbl['company.permtypes.form.revoke.tooltip']}"/> + </rich:toolTip> </rich:dataList> </h:panelGrid> + + <!-- PANEL WITH NOT PERMITTED TYPES --> <h:panelGrid id="NotPermittedTypesPanel"> <h:outputText value="#{lbl['company.permtypes.form.notpermittedlist']}"/>