Author: JirkaM Date: 2010-02-24 14:15:30 +0100 (Wed, 24 Feb 2010) New Revision: 1845 Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/component/layoutrel/LayoutListComponentBean.java trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml Log: * update list of layouts modified JavaSource/cz/elvys/webServer/component/layoutrel/LayoutListComponentBean.java modified WebContent/secured/components/layoutListComponent.xhtml Modified: trunk/server/webServer2/JavaSource/cz/elvys/webServer/component/layoutrel/LayoutListComponentBean.java =================================================================== --- trunk/server/webServer2/JavaSource/cz/elvys/webServer/component/layoutrel/LayoutListComponentBean.java 2010-02-24 09:45:26 UTC (rev 1844) +++ trunk/server/webServer2/JavaSource/cz/elvys/webServer/component/layoutrel/LayoutListComponentBean.java 2010-02-24 13:15:30 UTC (rev 1845) @@ -30,6 +30,9 @@ private String chooseListener1 = null; private String chooseListener2 = null; + // filter variables + private String filterValue; + // params // /** * param specifying id of company for which the list is generated @@ -269,4 +272,35 @@ } + /** + * Method for filtering list of user in table. + * + * @param current + * @return + */ + public boolean filterByValue(Object current) { + Layout layout = (Layout) current; + if (filterValue == null || filterValue.length() == 0) { + return true; + } + + String filterValueLowerCase = filterValue.toLowerCase(); + + if (layout.getName().toLowerCase().contains(filterValueLowerCase)) { return true; } + if(layout.getUserByModifiedBy().getRealname().toLowerCase().contains(filterValueLowerCase)) { return true; } + if(layout.getUserByModifiedBy().getSurname().toLowerCase().contains(filterValueLowerCase)) { return true; } + + return false; + } + + public String getFilterValue() { + return filterValue; + } + + public void setFilterValue(String filterValue) { + this.filterValue = filterValue; + } + + + } Modified: trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml =================================================================== --- trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml 2010-02-24 09:45:26 UTC (rev 1844) +++ trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml 2010-02-24 13:15:30 UTC (rev 1845) @@ -72,32 +72,71 @@ <h:form id="LayoutListForm" style="overflow:auto"> <h:panelGroup style="border: solid 1px black; padding: 0px; display: block; overflow: auto; float: left;"> <rich:dataTable id="#{id}" - width="700px" value="#{layoutListComponentBean.layoutsList}" var="layout" - rows="15"> - <h:column> + rows="15" + sortMode="single" + columnsWidth="300,50,220,50,120,100" + > + + + <f:facet name="header"> + <rich:columnGroup> + <rich:column colspan="6"> + <div class="controlPanel"> + <h:panelGroup rendered="#{showNew}" id="newLayoutDiv" > + <a4j:commandButton id="CreateLayoutButton" + image="/images/icons/create.png" + oncomplete="showLayoutEditor(this)" + reRender="#{id}"> + <f:setPropertyActionListener value="#{null}" + target="#{layoutEditBean.layoutToEdit}" /> + <f:actionListener type="cz.elvys.webServer.beans.layoutrel.LayoutEditBean$StartCreatingLayoutListener"/> + </a4j:commandButton> + <rich:toolTip for="CreateLayoutButton"> + <h:outputText value="#{lbl['layout.list.createlayouttooltip']}"/> + </rich:toolTip> + </h:panelGroup> + </div> + + <div class="searchPanel"> + #{lbl['list.search']} : + <h:inputText value="#{layoutListComponentBean.filterValue}" id="input"> + <a4j:support event="onkeyup" reRender="LayoutListForm" + ignoreDupResponses="true" requestDelay="700" + oncomplete="setCaretToEnd(event);" /> + </h:inputText> + </div> + </rich:column> + </rich:columnGroup> + </f:facet> + + + + + + <rich:column filterMethod="#{layoutListComponentBean.filterByValue}" + sortBy="#{layout.name}"> <f:facet name="header">#{lbl['layout.list.name']}</f:facet> <h:outputText value="#{layout.name}" /> - </h:column> - <h:column> + </rich:column> + <rich:column sortBy="#{layout.sectCount}"> <f:facet name="header">#{lbl['layout.list.numposition']}</f:facet> <h:outputText value="#{layout.sectCount}" /> - </h:column> - <h:column> + </rich:column> + <rich:column sortBy="#{layout.modified}"> <f:facet name="header">#{lbl['layout.list.modified']}</f:facet> <elvys:dateTimeLabel id="ModifiedDate" value="#{layout.modified}"/> - <br/> <elvys:userLabel id="UsrLbl" value="#{layout.userByModifiedBy}"/> - </h:column> - <h:column> + </rich:column> + <rich:column sortBy="#{layout.revision}"> <f:facet name="header">#{lbl['layout.list.revision']}</f:facet> <h:outputText value="#{layout.revision}" /> - </h:column> - <h:column> + </rich:column> + <rich:column sortBy="#{layout.created}"> <f:facet name="header">#{lbl['layout.list.created']}</f:facet> <elvys:dateTimeLabel id="CreatedDate" value="#{layout.created}"/> - </h:column> + </rich:column> <!-- EDIT AND DELETE LAYOUT --> <h:column> @@ -200,24 +239,7 @@ ajaxSingle="true" immediate="true" /> </f:facet> </rich:dataTable> - </h:panelGroup> - <h:panelGroup id="newLayoutDiv" - class="dr-table-subheadercell rich-table-subheadercell dr-table-subheader" - style="margin-left: -1px; float:left; border: solid 1px black;" - rendered="#{showNew}"> - <!-- CREATE NEW LAYOUT --> - <a4j:commandButton id="CreateLayoutButton" - image="/images/icons/create.png" - oncomplete="showLayoutEditor(this)" - reRender="#{id}"> - <f:setPropertyActionListener value="#{null}" - target="#{layoutEditBean.layoutToEdit}" /> - <f:actionListener type="cz.elvys.webServer.beans.layoutrel.LayoutEditBean$StartCreatingLayoutListener"/> - </a4j:commandButton> - <rich:toolTip for="CreateLayoutButton"> - <h:outputText value="#{lbl['layout.list.createlayouttooltip']}"/> - </rich:toolTip> - </h:panelGroup> + </h:panelGroup> <!-- hidden refresh link --> <h:commandButton id="LayoutListComponentRefreshHiddenLink"