Author: JirkaM Date: 2010-02-22 19:30:57 +0100 (Mon, 22 Feb 2010) New Revision: 1816 Added: trunk/server/webServer2/WebContent/images/icons/category-assign.gif Modified: trunk/server/elvysCommons/src/elvys/server/bl/Fact.java trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBL.java trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBLImpl.java trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBL.java trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImpl.java trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImplTest.java trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBL.java trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBLImpl.java trunk/server/elvysCommons/src/elvys/server/bl/user/UserBLImpl.java trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/ElvysesCompanyBean.java trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/elvysrel/ElvysEditBean.java trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties trunk/server/webServer2/WebContent/secured/elvysrel/editElvysForm.xhtml trunk/server/webServer2/WebContent/secured/elvysrel/listOfElvyses.xhtml Log: * update list of elvyses modified src/elvys/server/bl/companyRel/CompanyBL.java modified src/elvys/server/bl/companyRel/CompanyBLImpl.java modified src/elvys/server/bl/elvysrel/ElvysBL.java modified src/elvys/server/bl/elvysrel/ElvysBLImpl.java modified src/elvys/server/bl/elvysrel/ElvysBLImplTest.java modified src/elvys/server/bl/Fact.java modified src/elvys/server/bl/layoutrel/LayoutBL.java modified src/elvys/server/bl/layoutrel/LayoutBLImpl.java modified src/elvys/server/bl/user/UserBLImpl.java modified JavaSource/cz/elvys/webServer/beans/ElvysesCompanyBean.java modified JavaSource/cz/elvys/webServer/beans/elvysrel/ElvysEditBean.java modified JavaSource/cz/elvys/webServer/messages/labels_cs.properties modified WebContent/secured/elvysrel/editElvysForm.xhtml modified WebContent/secured/elvysrel/listOfElvyses.xhtml added WebContent/images/icons/category-assign.gif Modified: trunk/server/elvysCommons/src/elvys/server/bl/Fact.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/Fact.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/Fact.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -2,6 +2,8 @@ import elvys.server.bl.categrel.CategoryBL; import elvys.server.bl.categrel.CategoryBLImpl; +import elvys.server.bl.companyRel.CompanyBL; +import elvys.server.bl.companyRel.CompanyBLImpl; import elvys.server.bl.elvysrel.ElvysBL; import elvys.server.bl.elvysrel.ElvysBLImpl; import elvys.server.bl.file.FileManagerBL; @@ -80,5 +82,13 @@ return bl; } + /** + * @return + */ + public static CompanyBL getCompanyBL() { + CompanyBL bl = new CompanyBLImpl(); + return bl; + } + } Modified: trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBL.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBL.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBL.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -2,6 +2,8 @@ import java.util.List; +import org.hibernate.Session; + import cz.elvys.webServer.HIBgen.Company; @@ -25,4 +27,11 @@ */ List<Company> getListOfCompanies(CompanyType type) throws Exception; + /** + * Return object of company by company id. + * @param companyId + * @return + */ + public Company getCompanyByIdMakeSession(Integer companyId); + public Company getCompanyById(Integer companyId,Session sess); } Modified: trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBLImpl.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBLImpl.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/companyRel/CompanyBLImpl.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -5,6 +5,7 @@ import org.apache.log4j.Logger; import org.bouncycastle.asn1.isismtt.x509.Restriction; import org.hibernate.Criteria; +import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Restrictions; @@ -12,6 +13,7 @@ import cz.elvys.commons.utils.CommonUtils; import cz.elvys.commons.utils.HibUtils; import cz.elvys.webServer.HIBgen.Company; +import cz.elvys.webServer.HIBgen.User; import cz.elvys.webServer.db.InitSessionFactory; public class CompanyBLImpl implements CompanyBL { @@ -51,4 +53,38 @@ } return companies; } + + @Override + public Company getCompanyByIdMakeSession(Integer companyId) { + Session session = InitSessionFactory.getInstance().getCurrentSession(); + Transaction tx = session.getTransaction(); + Company company = null; + try { + tx.begin(); + } catch (Exception e) { + throw new Error("Company couldn't be obtained from DB",e); + } + + try { + company = getCompanyById(companyId, session); + tx.commit(); + } catch (Exception e) { + tx.rollback(); + throw new Error("User couldn't be obtained from DB",e); + } + return company; + } + + @Override + public Company getCompanyById(Integer companyId,Session sess) { + Query query = sess.createQuery("from Company company " + + "where company.id=:compId"); + query.setInteger("compId", companyId); + List<Company> companies = query.list(); + if(companies.size() == 1){ + return companies.get(0); + } + return null; + } + } Modified: trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBL.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBL.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBL.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -4,6 +4,7 @@ import org.hibernate.Session; +import cz.elvys.webServer.HIBgen.Company; import cz.elvys.webServer.HIBgen.Elvys; import cz.elvys.webServer.HIBgen.ElvysGroup; import cz.elvys.webServer.toSpring.exception.ExecuteException; @@ -101,7 +102,7 @@ * Deletes selected elvys. * Not supported yet. */ - public void deleteElvys(Integer elvysId) throws ExecuteException; + public void deleteElvys(Elvys elvysId) throws ExecuteException; /** * method called when activating/deactivating elvys @@ -114,6 +115,6 @@ * Method for store elvys into db. * @param elvys elvys object */ - public void saveElvys(Elvys elvys); + public void saveElvys(Elvys elvys,Integer resolutionId,Integer companyId); } Modified: trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImpl.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImpl.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImpl.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -9,10 +9,16 @@ import cz.elvys.commons.utils.CommonUtils; import cz.elvys.commons.utils.HibUtils; +import cz.elvys.webServer.HIBgen.Company; import cz.elvys.webServer.HIBgen.Elvys; import cz.elvys.webServer.HIBgen.ElvysGroup; +import cz.elvys.webServer.HIBgen.ElvysSetting; +import cz.elvys.webServer.HIBgen.Resolution; import cz.elvys.webServer.db.InitSessionFactory; import cz.elvys.webServer.toSpring.exception.ExecuteException; +import elvys.server.bl.Fact; +import elvys.server.bl.companyRel.CompanyBL; +import elvys.server.bl.layoutrel.LayoutBL; public class ElvysBLImpl implements ElvysBL { @@ -163,25 +169,20 @@ } @Override - public void deleteElvys(Integer elvysId) throws ExecuteException { + public void deleteElvys(Elvys elvys) throws ExecuteException { Session sess = InitSessionFactory.getInstance().getCurrentSession(); Transaction tx = HibUtils.startTx(sess); Integer updatedRows= null; try { - Query q = sess.createQuery("delete from Elvys where id=:id"); - q.setInteger("id", elvysId); - updatedRows = q.executeUpdate(); - if (updatedRows !=1) { - String message = CommonUtils.prepareErrorMessage(ERROR_BAD_DELETE_COUNT, - "elvysId", elvysId, "updatedRows", updatedRows); - throw new ExecuteException(message); - } + elvys.setDisabled(true); + sess.saveOrUpdate(elvys); tx.commit(); } catch(Exception e) { tx.rollback(); - String message = CommonUtils.prepareErrorMessage(CANNOT_DELETE_ELVYS, "elvysId", elvysId); + String message = CommonUtils.prepareErrorMessage(CANNOT_DELETE_ELVYS, "elvysId", elvys.getId()); throw new ExecuteException(message,e); } + } @@ -300,8 +301,47 @@ } @Override - public void saveElvys(Elvys elvys) { - // ADD validation of password if not updating + public void saveElvys(Elvys elvys,Integer resolutionId,Integer companyId) { + + if(resolutionId == null){ + throw new NullPointerException("Resolution cannot be null."); + } + + if(elvys == null){ + throw new NullPointerException("Elvys object cannot be null."); + } + + if(companyId == null){ + throw new NullPointerException("Company Id cannot be null."); + } + + // set resolution + LayoutBL lbl = Fact.getLayoutBL(); + Resolution resolution = lbl.getResolutionByIdMakeSession(resolutionId); + if(resolution == null){ + throw new NullPointerException("Resolution with specified Id cannot exists."); + } + elvys.setResolution(resolution); + + CompanyBL cbl = Fact.getCompanyBL(); + Company company = cbl.getCompanyByIdMakeSession(companyId); + if(company == null){ + throw new NullPointerException("Company with specified id cannot exists"); + } + elvys.setCompany(company); + + // set elvys_setting + ElvysSetting es = new ElvysSetting(); + es.setNightMode(false); + + elvys.setElvysSetting(es); + + // set elvys_group + ElvysGroup eg = new ElvysGroup(); + eg.setName(elvys.getName()+"-group"); + elvys.setElvysGroup(eg); + + Session sess = InitSessionFactory.getInstance().getCurrentSession(); Transaction tx = sess.getTransaction(); try { @@ -310,6 +350,8 @@ throw new Error("error occured when initializing hibernate session",e); } try { + sess.saveOrUpdate(es); + sess.saveOrUpdate(eg); sess.saveOrUpdate(elvys); tx.commit(); } catch (Exception e) { Modified: trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImplTest.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImplTest.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/elvysrel/ElvysBLImplTest.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -2,14 +2,21 @@ import java.util.List; +import org.hibernate.HibernateException; +import org.hibernate.Session; +import org.hibernate.Transaction; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.*; import cz.elvys.webServer.HIBgen.Category; +import cz.elvys.webServer.HIBgen.Company; import cz.elvys.webServer.HIBgen.Elvys; import cz.elvys.webServer.HIBgen.ElvysGroup; +import cz.elvys.webServer.HIBgen.ElvysSetting; +import cz.elvys.webServer.HIBgen.Resolution; +import cz.elvys.webServer.db.InitSessionFactory; import elvys.server.bl.Fact; import elvys.server.bl.categrel.CategoryBL; @@ -188,11 +195,25 @@ } + @Test + public void testSaveElvys() throws Exception { + Elvys elvys = new Elvys(); + + elvys.setName("testovaci elvys"); + elvys.setAddress("Testovaci adresa"); + elvys.setCity("Praha"); + elvys.setPsc("68713"); + + + + ebl.saveElvys(elvys, 2, companyId); + } + private void assertElvyses(List<Elvys> elvyses) { assertTrue(elvyses != null && elvyses.size() > 0); for (Elvys elv: elvyses) { @@ -221,4 +242,6 @@ assertTrue(group.getId() != null); } + + } Modified: trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBL.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBL.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBL.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -68,4 +68,12 @@ * @throws ExecuteException */ public List<Resolution> listResolutions() throws ExecuteException; + + /** + * Return object of resolution by reolution id. + * @param resolutionId + * @return + */ + public Resolution getResolutionById(Integer resolutionId,Session sess); + public Resolution getResolutionByIdMakeSession(Integer resolutionId); } Modified: trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBLImpl.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBLImpl.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/layoutrel/LayoutBLImpl.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -14,6 +14,7 @@ import cz.elvys.commons.utils.HibUtils; import cz.elvys.webServer.HIBgen.AspectRatio; import cz.elvys.webServer.HIBgen.CategoryDefinition; +import cz.elvys.webServer.HIBgen.Company; import cz.elvys.webServer.HIBgen.Layout; import cz.elvys.webServer.HIBgen.Resolution; import cz.elvys.webServer.db.InitSessionFactory; @@ -241,6 +242,37 @@ return resolutions; } + @Override + public Resolution getResolutionByIdMakeSession(Integer resolutionId) { + Session session = InitSessionFactory.getInstance().getCurrentSession(); + Transaction tx = session.getTransaction(); + Resolution resolution = null; + try { + tx.begin(); + } catch (Exception e) { + throw new Error("Resolution couldn't be obtained from DB",e); + } + + try { + resolution = getResolutionById(resolutionId, session); + tx.commit(); + } catch (Exception e) { + tx.rollback(); + throw new Error("Resolution couldn't be obtained from DB",e); + } + return resolution; + } + @Override + public Resolution getResolutionById(Integer resolutionId, Session sess) { + Query query = sess.createQuery("from Resolution resolution " + + "where resolution.id=:resolutionId"); + query.setInteger("resolutionId", resolutionId); + List<Resolution> resolutions = query.list(); + if(resolutions.size() == 1){ + return resolutions.get(0); + } + return null; + } } Modified: trunk/server/elvysCommons/src/elvys/server/bl/user/UserBLImpl.java =================================================================== --- trunk/server/elvysCommons/src/elvys/server/bl/user/UserBLImpl.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/elvysCommons/src/elvys/server/bl/user/UserBLImpl.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -173,7 +173,7 @@ companiesList = new LinkedList<Company>(); companiesList.add(comp); } else if ("superadmin".equalsIgnoreCase(competency)) { - Query query = sess.createQuery("from Company as company where disabled = 0"); + Query query = sess.createQuery("from Company as company where disabled = 0 and system = 0"); companiesList = query.list(); } tx.commit(); Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/ElvysesCompanyBean.java =================================================================== --- trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/ElvysesCompanyBean.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/ElvysesCompanyBean.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -183,14 +183,14 @@ public void deleteElvys(ActionEvent aev) { if (selectedElvys == null) { throw new NullPointerException("selectedElvys"); - } - Integer elvysId = selectedElvys.getId(); + } try { - ebl.deleteElvys(elvysId); + ebl.deleteElvys(selectedElvys); } catch(Exception e) { log.error(e.getMessage(),e); throw new RuntimeException(e); } + prepareList(); } /** Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/elvysrel/ElvysEditBean.java =================================================================== --- trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/elvysrel/ElvysEditBean.java 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/elvysrel/ElvysEditBean.java 2010-02-22 18:30:57 UTC (rev 1816) @@ -15,6 +15,8 @@ import cz.elvys.webServer.HIBgen.AspectRatio; import cz.elvys.webServer.HIBgen.Company; import cz.elvys.webServer.HIBgen.Elvys; +import cz.elvys.webServer.HIBgen.ElvysGroup; +import cz.elvys.webServer.HIBgen.ElvysSetting; import cz.elvys.webServer.HIBgen.Resolution; import cz.elvys.webServer.beans.ElvysesCompanyBean; import cz.elvys.webServer.beans.user.UserLoginBean; @@ -43,6 +45,7 @@ private List<SelectItem> resolutionsToSelect = null; private Integer sizeOfResolutionsToSelect = null; + private String resolutionsSelected; private ElvysBL elvysBL; @@ -73,6 +76,8 @@ // system has been set already companiesToSelect= loadPermittedCompanyList(); sizeOfCompaniesToSelect= companiesToSelect.size(); + resolutionsToSelect = loadResolutionList(); + sizeOfResolutionsToSelect = resolutionsToSelect.size(); return "editElvysForm"; } @@ -86,10 +91,11 @@ Company company = selectedElvys.getCompany(); if(company == null){ UserLoginBean me = BeanManager.getUser(); - selectedElvys.setCompany(me.getCompany()); + company = me.getCompany(); } + - elvysBL.saveElvys(selectedElvys); + elvysBL.saveElvys(selectedElvys, new Integer(resolutionsSelected), company.getId()); ElvysesCompanyBean elvysList = BeanManager.getElvysesCompanyBean(); return elvysList.prepareListBeforeUC(); } @@ -111,7 +117,7 @@ AspectRatio ar = re.getAspectRatio(); String label = re.getResX() + "x" + re.getResY() + " (" + ar.getXBase() + ":" + ar.getYBase() + ")"; si.setLabel(label); - si.setValue(re); + si.setValue(re.getId().toString()); resolutions.add(si); } return resolutions; @@ -187,4 +193,12 @@ public void setSizeOfResolutionsToSelect(Integer sizeOfResolutionsToSelect) { this.sizeOfResolutionsToSelect = sizeOfResolutionsToSelect; } + + public String getResolutionsSelected() { + return resolutionsSelected; + } + + public void setResolutionsSelected(String resolutionsSelected) { + this.resolutionsSelected = resolutionsSelected; + } } 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-22 09:38:37 UTC (rev 1815) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties 2010-02-22 18:30:57 UTC (rev 1816) @@ -272,6 +272,7 @@ elvys.list.table.companyname=Jm\u00E9no spole\u010Dnosti elvys.list.table.city=M\u011Bsto elvys.list.table.adress=Adresa +elvys.list.table.editelvys=Editace kiosku elvys.list.table.doplan=Pl\u00E1nov\u00E1n\u00ED elvys.list.table.schedule=Pl\u00E1nov\u00E1n\u00ED dat na obrazovku kiosku elvys.list.table.cannotschedule=Kiosek nem\u00E1 zvolenu \u017E\u00E1dnou kategorii. P\u0159i\u0159a\u010Fte pros\u00EDm kiosku jednu nebo v\u00EDce kategori\u00ED. @@ -286,6 +287,11 @@ elvys.list.modal.layouts.startendbutton=Potvrdit elvys.list.modal.layouts.list.selectoneheader=Seznam rozvr\u017Een\u00ED elvys.list.modal.screenshot.time=\u010Cas po\u0159\u00EDzen\u00ED sn\u00EDmku\: +elvys.list.body.delete.tooltip.question=Opravdu chcete odstranit kiosek? +elvys.list.body.delete.tooltip.no=Ne +elvys.list.body.delete.tooltip.yes=Ano +elvys.list.body.delete.tooltip=Odstranit kiosek ze syst\u00e9mu +elvys.list.table.catcCount=Kategorie elvys.edit.form.title.create=Nov\u00fd kiosek elvys.edit.form.title.modify=Upravit kiosek Added: trunk/server/webServer2/WebContent/images/icons/category-assign.gif =================================================================== (Binary files differ) Property changes on: trunk/server/webServer2/WebContent/images/icons/category-assign.gif ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Modified: trunk/server/webServer2/WebContent/secured/elvysrel/editElvysForm.xhtml =================================================================== --- trunk/server/webServer2/WebContent/secured/elvysrel/editElvysForm.xhtml 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/webServer2/WebContent/secured/elvysrel/editElvysForm.xhtml 2010-02-22 18:30:57 UTC (rev 1816) @@ -45,36 +45,34 @@ label="#{lbl['elvys.edit.form.zipCode']}"></elvys:label> <elvys:inputText2 id="zipCodeField" value="#{elvysEditBean.selectedElvys.psc}" required="true" /> - - - <h:panelGroup rendered="#{user.user.system}" > - <elvys:label id="elvysEditCompanyListLabel" - label="#{lbl['elvys.edit.form.companylist']}" - rendered="#{user.user.system}"></elvys:label> - </h:panelGroup> - <h:panelGroup rendered="#{user.user.system}" > - <h:selectOneListbox id="companyField" required="true" - value="#{elvysEditBean.selectedElvys.company}" - size="#{elvysEditBean.sizeOfCompaniesToSelect >=3? 3 : elvysEditBean.sizeOfCompaniesToSelect}"> - <f:converter converterId="companyConverter" /> - <f:selectItems value="#{elvysEditBean.companiesToSelect}" /> - </h:selectOneListbox> - <h:message for="companyField" styleClass="error" /> - </h:panelGroup> - <elvys:label id="elvysEditResolutionListLabel" label="#{lbl['elvys.edit.form.resolutionlist']}" tooltip="#{lbl['elvys.edit.form.resolutionlist.tooltip']}" ></elvys:label> <h:panelGroup> <h:selectOneListbox id="resolutionField" required="true" - value="#{elvysEditBean.selectedElvys.resolution}" + value="#{elvysEditBean.resolutionsSelected}" size="#{elvysEditBean.sizeOfResolutionsToSelect >=3? 3 : elvysEditBean.sizeOfResolutionsToSelect}"> <f:selectItems value="#{elvysEditBean.resolutionsToSelect}" /> </h:selectOneListbox> <h:message for="resolutionField" styleClass="error" /> </h:panelGroup> + + <elvys:label id="elvysEditCompanyListLabel" + label="#{lbl['elvys.edit.form.companylist']}"></elvys:label> + <h:panelGroup> + <h:selectOneListbox id="companyField" required="true" + value="#{elvysEditBean.selectedElvys.company}" + size="#{elvysEditBean.sizeOfCompaniesToSelect >=3? 3 : elvysEditBean.sizeOfCompaniesToSelect}"> + <f:converter converterId="companyConverter" /> + <f:selectItems value="#{elvysEditBean.companiesToSelect}" /> + </h:selectOneListbox> + <h:message for="companyField" styleClass="error" /> + </h:panelGroup> + + + </h:panelGrid> Modified: trunk/server/webServer2/WebContent/secured/elvysrel/listOfElvyses.xhtml =================================================================== --- trunk/server/webServer2/WebContent/secured/elvysrel/listOfElvyses.xhtml 2010-02-22 09:38:37 UTC (rev 1815) +++ trunk/server/webServer2/WebContent/secured/elvysrel/listOfElvyses.xhtml 2010-02-22 18:30:57 UTC (rev 1816) @@ -60,7 +60,7 @@ <f:facet name="header"> <rich:columnGroup> - <rich:column colspan="#{4+(elvysesBean.userSuperAdmin?1:0)}"> + <rich:column colspan="#{5+(elvysesBean.userSuperAdmin?1:0)}"> <div class="controlPanel"> <h:panelGroup> <a4j:commandButton id="CreateNewElvys" @@ -88,12 +88,12 @@ <rich:column - width="160px" + width="100px" filterMethod="#{elvysesBean.filterByValue}" sortBy="#{record.elvys.name}" > <f:facet name="header">#{lbl['elvys.list.table.elvysname']}</f:facet> <h:outputText value="#{record.elvys.name}"/> - </rich:column> + </rich:column> <!-- STATE OF ELVYS --> @@ -128,79 +128,126 @@ <h:outputText value="#{record.elvys.company.name}"/> </rich:column> <rich:column sortBy="#{record.elvys.address}" - width="250px" > + width="200px" > <f:facet name="header">#{lbl['elvys.list.table.adress']}</f:facet> <h:outputText value="#{record.elvys.address}, #{record.elvys.psc} #{record.elvys.city}"/> </rich:column> + <rich:column + width="80px" + sortBy="#{record.catCount}" > + <f:facet name="header">#{lbl['elvys.list.table.catcCount']}</f:facet> + <h:outputText value="#{record.catCount}"/> + </rich:column> + <!-- OPERATIONS BUTTONS --> - <rich:column width="120px"> + <rich:column width="150px"> <f:facet name="header">#{lbl['elvys.list.table.operations']}</f:facet> - <h:panelGroup rendered="#{user.compStr!='superadmin'}"> - <h:commandButton - id="PlanDocumentsButton" - rendered="#{record.catCount > 0}" - action="#{filePlanningBean.onlyRedir}" - image="/images/icons/plan.png"> - <f:setPropertyActionListener value="#{record.elvys.id}" target="#{filePlanningBean.selectedElvysId}" /> - <f:actionListener type="cz.elvys.webServer.beans.FilePlanningBean$PrepareComponentBeforeUCListener" /> - </h:commandButton> - <rich:toolTip for="PlanDocumentsButton" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.schedule']}"/> - </rich:toolTip> - <h:graphicImage id="CannotPlanDocuments" - url="/images/icons/cannot_schedule.png" - rendered="#{record.catCount == 0}"/> - <rich:toolTip for="CannotPlanDocuments" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.cannotschedule']}"/> - </rich:toolTip> - </h:panelGroup> + <div class="list-operations-main"> + <h:panelGroup rendered="#{user.compStr!='superadmin'}"> + <div class="list-operations-item"> + <h:commandButton + id="PlanDocumentsButton" + rendered="#{record.catCount > 0}" + action="#{filePlanningBean.onlyRedir}" + image="/images/icons/plan.png"> + <f:setPropertyActionListener value="#{record.elvys.id}" target="#{filePlanningBean.selectedElvysId}" /> + <f:actionListener type="cz.elvys.webServer.beans.FilePlanningBean$PrepareComponentBeforeUCListener" /> + </h:commandButton> + <rich:toolTip for="PlanDocumentsButton" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.schedule']}"/> + </rich:toolTip> + <h:graphicImage id="CannotPlanDocuments" + url="/images/icons/cannot_schedule.png" + rendered="#{record.catCount == 0}"/> + <rich:toolTip for="CannotPlanDocuments" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.cannotschedule']}"/> + </rich:toolTip> + </div> + </h:panelGroup> - <h:panelGroup rendered="#{user.compStr!='user'}"> - <!-- ASSIGN CATEGORY --> - <a4j:commandButton - id="AssignCategoryButton" - rendered="#{user.compStr!='superadmin'}" - image="/images/icons/edit.png" - action="#{catDefAssignStep1Bean.prepare}"> - <f:setPropertyActionListener value="#{record.elvys}" target="#{catDefAssignStep1Bean.updatedElvys}" /> - </a4j:commandButton> - <rich:toolTip for="AssignCategoryButton" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.assigncategory']}"/> - </rich:toolTip> + <h:panelGroup rendered="#{user.compStr!='user'}"> + + <div class="list-operations-item"> + <!-- Delete Elvys --> + <a4j:commandButton id="DeleteElvys" + reRender="DeleteElvysModalContent" + oncomplete="Richfaces.showModalPanel('DeleteElvysModal',{left:300, top:300})" + image="/images/icons/delete.gif"> + <f:setPropertyActionListener value="#{record.elvys}" + target="#{elvysesBean.selectedElvys}" /> + </a4j:commandButton> + <rich:toolTip for="DeleteElvys" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.body.delete.tooltip']}" /> + </rich:toolTip> + </div> - <!-- DEACTIVATE ELVYS --> - <a4j:commandButton - id="DeactivateButton" - rendered="#{record.elvys.active}" - reRender="listOfElvyses" - image="/images/icons/deactivate.png"> - <f:setPropertyActionListener value="#{record.elvys}" target="#{elvysesBean.selectedElvys}" /> - <f:actionListener type="cz.elvys.webServer.beans.ElvysesCompanyBean$DeactivateElvysListener"/> - </a4j:commandButton> - <rich:toolTip for="DeactivateButton" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.deactivate']}"/> - </rich:toolTip> - <!-- ACTIVATE ELVYS --> - <a4j:commandButton - id="ActivateButton" - rendered="#{!record.elvys.active and record.catCount > 0}" - reRender="listOfElvyses" - image="/images/icons/activate.png"> - <f:setPropertyActionListener value="#{record.elvys}" target="#{elvysesBean.selectedElvys}" /> - <f:actionListener type="cz.elvys.webServer.beans.ElvysesCompanyBean$ActivateElvysListener"/> - </a4j:commandButton> - <rich:toolTip for="ActivateButton" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.activate']}"/> - </rich:toolTip> - <!-- CANNOT ACTIVATE ELVYS --> - <h:graphicImage id="CannotActivate" url="/images/icons/activate.png" rendered="#{!record.elvys.active and record.catCount == 0}"/> - <rich:toolTip for="CannotActivate" direction="bottom-left"> - <h:outputText value="#{lbl['elvys.list.table.cannotactivate']}"/> - </rich:toolTip> - </h:panelGroup> + <div class="list-operations-item"> + <!-- Edit Elvys --> + <h:commandButton + id="EditElvysButton" + image="/images/icons/edit.png" + action="#{elvysEditBean.prepareCreateElvysForm}"> + <f:setPropertyActionListener value="#{record.elvys}" target="#{editElvysBean.selectedElvys}" /> + </h:commandButton> + <rich:toolTip for="EditElvysButton" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.editelvys']}"/> + </rich:toolTip> + </div> + + <div class="list-operations-item"> + <!-- ASSIGN CATEGORY --> + <a4j:commandButton + id="AssignCategoryButton" + rendered="#{user.compStr!='superadmin'}" + image="/images/icons/category-assign.gif" + action="#{catDefAssignStep1Bean.prepare}"> + <f:setPropertyActionListener value="#{record.elvys}" target="#{catDefAssignStep1Bean.updatedElvys}" /> + </a4j:commandButton> + <rich:toolTip for="AssignCategoryButton" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.assigncategory']}"/> + </rich:toolTip> + </div> + + <div class="list-operations-item"> + <!-- DEACTIVATE ELVYS --> + <a4j:commandButton + id="DeactivateButton" + rendered="#{record.elvys.active}" + reRender="listOfElvyses" + image="/images/icons/deactivate.png"> + <f:setPropertyActionListener value="#{record.elvys}" target="#{elvysesBean.selectedElvys}" /> + <f:actionListener type="cz.elvys.webServer.beans.ElvysesCompanyBean$DeactivateElvysListener"/> + </a4j:commandButton> + <rich:toolTip for="DeactivateButton" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.deactivate']}"/> + </rich:toolTip> + </div> + + <div class="list-operations-item"> + <!-- ACTIVATE ELVYS --> + <a4j:commandButton + id="ActivateButton" + rendered="#{!record.elvys.active and record.catCount > 0}" + reRender="listOfElvyses" + image="/images/icons/activate.png"> + <f:setPropertyActionListener value="#{record.elvys}" target="#{elvysesBean.selectedElvys}" /> + <f:actionListener type="cz.elvys.webServer.beans.ElvysesCompanyBean$ActivateElvysListener"/> + </a4j:commandButton> + <rich:toolTip for="ActivateButton" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.activate']}"/> + </rich:toolTip> + <!-- CANNOT ACTIVATE ELVYS --> + <h:graphicImage id="CannotActivate" url="/images/icons/activate.png" rendered="#{!record.elvys.active and record.catCount == 0}"/> + <rich:toolTip for="CannotActivate" direction="bottom-left"> + <h:outputText value="#{lbl['elvys.list.table.cannotactivate']}"/> + </rich:toolTip> + </div> + + </h:panelGroup> + </div> </rich:column> <f:facet name="footer"> @@ -251,6 +298,28 @@ </h:form> </rich:modalPanel> + + <rich:modalPanel id="DeleteElvysModal" minHeight="100" minWidth="200" + height="150" width="200" zindex="2000"> + <center><h:form id="DeleteElvysModalContent"> + <b><h:outputText>#{lbl['elvys.list.body.delete.tooltip.question']}</h:outputText></b> + <br /> + <h:outputText value="#{elvysesBean.selectedElvys.name}:" /> + <br /> + <h:panelGrid columns="2"> + <a4j:commandButton + value="#{lbl['elvys.list.body.delete.tooltip.yes']}" + onclick="Richfaces.hideModalPanel('DeleteElvysModal')" + actionListener="#{elvysesBean.deleteUser}" reRender="listOfUsers"> + </a4j:commandButton> + <a4j:commandButton + value="#{lbl['elvys.list.body.delete.tooltip.no']}" + onclick="Richfaces.hideModalPanel('DeleteUserModal')" + reRender="listOfUsers" /> + </h:panelGrid> + </h:form></center> + </rich:modalPanel> + </ui:define> </ui:composition> </html> \ No newline at end of file