You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jo...@apache.org on 2007/01/07 09:56:17 UTC
svn commit: r493684 - in /ofbiz/trunk/applications/workeffort: config/
entitydef/ src/org/ofbiz/workeffort/workeffort/
webapp/workeffort/WEB-INF/actions/find/ webapp/workeffort/find/
Author: jonesde
Date: Sun Jan 7 00:56:16 2007
New Revision: 493684
URL: http://svn.apache.org/viewvc?view=rev&rev=493684
Log:
Applied patch from Ashish to extend WorkEffort advanced search UI, from Jira #OFBIZ-580; small change to not comment out the 2-way WorkEffortAssoc search
Modified:
ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.properties
ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml
ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearch.java
ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearchSession.java
ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/actions/find/WorkEffortSearchOptions.bsh
ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchOptions.ftl
ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchResults.ftl
Modified: ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.properties
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.properties?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.properties (original)
+++ ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.properties Sun Jan 7 00:56:16 2007
@@ -155,6 +155,7 @@
WorkEffortAddExistingTask=Add An Existing Task (WorkEffortId)
WorkEffortAllPhases=All Phases
WorkEffortAllTasks=All Tasks
+WorkEffortAnyAssocType=Any Assoc Type
WorkEffortApplicationEventsTasksWorkflowActivities=This application is meant for those who maintain and use calendar events tasks and workflow activities
WorkEffortAssignedTasks=Assigned Tasks
WorkEffortAssociatedFromParentToChild=(associated from parent to child)
@@ -274,6 +275,8 @@
WorkEffortPriorityHigh=High
WorkEffortPriorityLow=Low
WorkEffortProductId=ProductID
+WorkEffortProductId1=ProductID 1
+WorkEffortProductId2=ProductID 2
WorkEffortProject=Project
WorkEffortProjectPhases=ProjectPhases
WorkEffortProjects=Projects
Modified: ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml Sun Jan 7 00:56:16 2007
@@ -732,7 +732,7 @@
<field name="constraintSeqId" type="id-ne"></field>
<field name="constraintName" type="long-varchar"></field>
<field name="infoString" type="long-varchar"></field>
- <field name="includeSubCategories" type="indicator"></field>
+ <field name="includeSubWorkEfforts" type="indicator"></field>
<field name="isAnd" type="indicator"></field>
<field name="anyPrefix" type="indicator"></field>
<field name="anySuffix" type="indicator"></field>
Modified: ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearch.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearch.java?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearch.java (original)
+++ ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearch.java Sun Jan 7 00:56:16 2007
@@ -199,7 +199,7 @@
long startMillis = System.currentTimeMillis();
// do the query
- EntityListIterator eli = this.doQuery(delegator);
+ EntityListIterator eli = this.doQuery(delegator);
ArrayList workEffortIds = this.makeWorkEffortIdList(eli);
if (eli != null) {
try {
@@ -545,7 +545,7 @@
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "WorkEffortAssocTypeId", "workEffortAssocTypeId", null, null, null, null);
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "FromDate", "fromDate", null, null, null, null);
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "ThruDate", "thruDate", null, null, null, null);
- workEffortSearchContext.dynamicViewEntity.addViewLink("WEFF", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("workEffortIdFrom"));
+ workEffortSearchContext.dynamicViewEntity.addViewLink("WEFF", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("workEffortId","workEffortIdFrom"));
workEffortSearchContext.entityConditionList.add(new EntityExpr(prefix + "WorkEffortIdTo", EntityOperator.IN, workEffortIdSet));
if (UtilValidate.isNotEmpty(workEffortAssocTypeId)) {
@@ -565,7 +565,7 @@
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "WorkEffortAssocTypeId", "workEffortAssocTypeId", null, null, null, null);
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "FromDate", "fromDate", null, null, null, null);
workEffortSearchContext.dynamicViewEntity.addAlias(entityAlias, prefix + "ThruDate", "thruDate", null, null, null, null);
- workEffortSearchContext.dynamicViewEntity.addViewLink("WEFF", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("workEffortIdTo"));
+ workEffortSearchContext.dynamicViewEntity.addViewLink("WEFF", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("workEffortId","workEffortIdTo"));
workEffortSearchContext.entityConditionList.add(new EntityExpr(prefix + "WorkEffortIdFrom", EntityOperator.IN, workEffortIdSet));
if (UtilValidate.isNotEmpty(workEffortAssocTypeId)) {
@@ -1016,18 +1016,50 @@
public LastUpdatedRangeConstraint(Timestamp fromDate, Timestamp thruDate) {
this.fromDate = fromDate;
- this.thruDate = thruDate;
+ this.thruDate = thruDate;
}
public void addConstraint(WorkEffortSearchContext workEffortSearchContext) {
- // TODO: implement LastUpdatedRangeConstraint makeEntityCondition
+ workEffortSearchContext.dynamicViewEntity.addAlias("WEFF", "lastModifiedDate", "lastModifiedDate", null, null, null, null);
+
+ EntityConditionList dateConditions = null;
+ EntityExpr dateCondition=null;
+ if(fromDate !=null && thruDate!=null) {
+ dateConditions= new EntityConditionList(UtilMisc.toList(
+ new EntityExpr("lastModifiedDate", EntityOperator.GREATER_THAN_EQUAL_TO, fromDate),
+ new EntityExpr("lastModifiedDate", EntityOperator.LESS_THAN_EQUAL_TO, thruDate)), EntityOperator.AND);
+ } if(fromDate !=null) {
+ dateCondition=new EntityExpr("lastModifiedDate", EntityOperator.GREATER_THAN_EQUAL_TO, fromDate);
+ } else if (thruDate != null) {
+ dateCondition = new EntityExpr("lastModifiedDate", EntityOperator.LESS_THAN_EQUAL_TO, thruDate);
+ }
+ EntityConditionList conditions = null;
+ if(fromDate !=null && thruDate!=null) {
+ conditions=new EntityConditionList(UtilMisc.toList(
+ dateConditions,
+ new EntityExpr("lastModifiedDate", EntityOperator.EQUALS, null)),
+ EntityOperator.OR);
+ } else {
+ conditions=new EntityConditionList(UtilMisc.toList(
+ dateCondition,
+ new EntityExpr("lastModifiedDate", EntityOperator.EQUALS, null)),
+ EntityOperator.OR);
+ }
+
+ workEffortSearchContext.entityConditionList.add(conditions);
+
+ // add in workEffortSearchConstraint, don't worry about the workEffortSearchResultId or constraintSeqId, those will be fill in later
+ workEffortSearchContext.workEffortSearchConstraintList.add(workEffortSearchContext.getDelegator().makeValue("WorkEffortSearchConstraint", UtilMisc.toMap("constraintName", constraintName, "infoString","fromDate : " + fromDate + " thruDate : " + thruDate)));
}
/** pretty print for log messages and even UI stuff */
public String prettyPrintConstraint(GenericDelegator delegator, boolean detailed, Locale locale) {
- // TODO: implement the pretty print for log messages and even UI stuff
- return null;
+ StringBuffer ppBuf = new StringBuffer();
+ ppBuf.append(UtilProperties.getMessage(resource, "WorkEffortLastModified", locale) + ": \"");
+ ppBuf.append(fromDate +"-" +thruDate + "\", " + UtilProperties.getMessage(resource, "WorkEffortLastModified", locale) + " ");
+ return ppBuf.toString();
}
+
public boolean equals(Object obj) {
WorkEffortSearchConstraint psc = (WorkEffortSearchConstraint) obj;
Modified: ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearchSession.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearchSession.java?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearchSession.java (original)
+++ ofbiz/trunk/applications/workeffort/src/org/ofbiz/workeffort/workeffort/WorkEffortSearchSession.java Sun Jan 7 00:56:16 2007
@@ -16,6 +16,7 @@
*/
package org.ofbiz.workeffort.workeffort;
+import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
@@ -27,6 +28,7 @@
import javax.servlet.http.HttpSession;
import org.ofbiz.base.util.Debug;
+import org.ofbiz.base.util.UtilDateTime;
import org.ofbiz.base.util.UtilHttp;
import org.ofbiz.base.util.UtilValidate;
import org.ofbiz.entity.GenericDelegator;
@@ -187,6 +189,48 @@
searchAddConstraint(new WorkEffortSearch.WorkEffortReviewConstraint(reviewText), session);
constraintsChanged = true;
}
+// add a Work Effort Assoc Type to the search
+ if (UtilValidate.isNotEmpty((String) parameters.get("SEARCH_WORK_EFFORT_ID"))) {
+ String workEffortId=(String) parameters.get("SEARCH_WORK_EFFORT_ID");
+ String workEffortAssocTypeId=(String) parameters.get("workEffortAssocTypeId");
+ boolean includeAllSubWorkEfforts =!"N".equalsIgnoreCase((String) parameters.get("SEARCH_SUB_WORK_EFFORTS"));
+ searchAddConstraint(new WorkEffortSearch.WorkEffortAssocConstraint(workEffortId,workEffortAssocTypeId,includeAllSubWorkEfforts), session);
+ constraintsChanged = true;
+ }
+// add a Work Effort Party Assignment to the search
+ if (UtilValidate.isNotEmpty((String) parameters.get("partyId"))) {
+ String partyId=(String) parameters.get("partyId");
+ String roleTypeId=(String) parameters.get("roleTypeId");
+ searchAddConstraint(new WorkEffortSearch.PartyAssignmentConstraint(partyId,roleTypeId), session);
+ constraintsChanged = true;
+ }
+
+// add a Product Set to the search
+ if (UtilValidate.isNotEmpty((String) parameters.get("productId_1"))) {
+ List productSet = new ArrayList();
+ productSet.add(parameters.get("productId_1"));
+ if (UtilValidate.isNotEmpty((String) parameters.get("productId_2"))) {
+ productSet.add(parameters.get("productId_2"));
+ }
+ searchAddConstraint(new WorkEffortSearch.ProductSetConstraint(productSet), session);
+ constraintsChanged = true;
+ }
+
+// add a WorkEfort fromDate thruDate to the search
+ if (UtilValidate.isNotEmpty((String) parameters.get("fromDate")) || UtilValidate.isNotEmpty((String) parameters.get("thruDate")) ) {
+ Timestamp fromDate =null;
+ if (UtilValidate.isNotEmpty((String) parameters.get("fromDate"))) {
+ fromDate=Timestamp.valueOf((String) parameters.get("fromDate"));
+ }
+
+ Timestamp thruDate = null;
+ if (UtilValidate.isNotEmpty((String) parameters.get("thruDate"))) {
+ thruDate = Timestamp.valueOf((String) parameters.get("thruDate"));
+ }
+ searchAddConstraint(new WorkEffortSearch.LastUpdatedRangeConstraint(fromDate,thruDate), session);
+ constraintsChanged = true;
+ }
+
// if keywords were specified, add a constraint for them
if (UtilValidate.isNotEmpty((String) parameters.get("SEARCH_STRING"))) {
String keywordString = (String) parameters.get("SEARCH_STRING");
Modified: ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/actions/find/WorkEffortSearchOptions.bsh
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/actions/find/WorkEffortSearchOptions.bsh?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/actions/find/WorkEffortSearchOptions.bsh (original)
+++ ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/actions/find/WorkEffortSearchOptions.bsh Sun Jan 7 00:56:16 2007
@@ -16,6 +16,7 @@
*/
import org.ofbiz.base.util.*;
+import java.sql.Timestamp;
import org.ofbiz.workeffort.workeffort.*;
searchOperator = parameters.get("SEARCH_OPERATOR");
@@ -23,9 +24,38 @@
searchOperator = "OR";
}
+//create the fromDate for calendar
+fromCal = Calendar.getInstance();
+fromCal.setTime(new java.util.Date());
+//fromCal.set(Calendar.DAY_OF_WEEK, fromCal.getActualMinimum(Calendar.DAY_OF_WEEK));
+fromCal.set(Calendar.HOUR_OF_DAY, fromCal.getActualMinimum(Calendar.HOUR_OF_DAY));
+fromCal.set(Calendar.MINUTE, fromCal.getActualMinimum(Calendar.MINUTE));
+fromCal.set(Calendar.SECOND, fromCal.getActualMinimum(Calendar.SECOND));
+fromCal.set(Calendar.MILLISECOND, fromCal.getActualMinimum(Calendar.MILLISECOND));
+fromTs = new Timestamp(fromCal.getTimeInMillis());
+fromStr = fromTs.toString();
+fromStr = fromStr.substring(0, fromStr.indexOf('.'));
+context.put("fromDateStr", fromStr);
+
+// create the thruDate for calendar
+toCal = Calendar.getInstance();
+toCal.setTime(new java.util.Date());
+//toCal.set(Calendar.DAY_OF_WEEK, toCal.getActualMaximum(Calendar.DAY_OF_WEEK));
+toCal.set(Calendar.HOUR_OF_DAY, toCal.getActualMaximum(Calendar.HOUR_OF_DAY));
+toCal.set(Calendar.MINUTE, toCal.getActualMaximum(Calendar.MINUTE));
+toCal.set(Calendar.SECOND, toCal.getActualMaximum(Calendar.SECOND));
+toCal.set(Calendar.MILLISECOND, toCal.getActualMaximum(Calendar.MILLISECOND));
+toTs = new Timestamp(toCal.getTimeInMillis());
+toStr = toTs.toString();
+context.put("thruDateStr", toStr);
+
searchConstraintStrings = WorkEffortSearchSession.searchGetConstraintStrings(false, session, delegator);
searchSortOrderString = WorkEffortSearchSession.searchGetSortOrderString(false, request);
+workEffortAssocTypes=delegator.findAll("WorkEffortAssocType");
+roleTypes=delegator.findAll("RoleType");
context.put("searchOperator", searchOperator);
context.put("searchConstraintStrings", searchConstraintStrings);
context.put("searchSortOrderString", searchSortOrderString);
+context.put("workEffortAssocTypes", workEffortAssocTypes);
+context.put("roleTypes", roleTypes);
\ No newline at end of file
Modified: ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchOptions.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchOptions.ftl?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchOptions.ftl (original)
+++ ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchOptions.ftl Sun Jan 7 00:56:16 2007
@@ -42,7 +42,106 @@
</div>
</td>
</tr>
-
+ <tr>
+ <td align="right" valign="middle">
+ <div class="tabletext">${uiLabelMap.FormFieldTitle_workEffortId}:</div>
+ </td>
+ <td valign="middle">
+ <div class="tabletext">
+ <input type="text" class="inputBox" name="SEARCH_WORK_EFFORT_ID" size="40" value="${requestParameters.SEARCH_WORK_EFFORT_ID?if_exists}"/>
+ <a href="javascript:call_fieldlookup2(document.advToKeyWordSearchForm.SEARCH_WORK_EFFORT_ID,'LookupWorkEffort');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td align="right" valign="middle" nowrap>
+ <div class="tabletext">${uiLabelMap.FormFieldTitle_workEffortAssocTypeId}:</div>
+ </td>
+ <td valign="middle" nowrap>
+ <div class="tabletext">
+ <select class="selectBox" name="workEffortAssocTypeId">
+ <option value="">- ${uiLabelMap.WorkEffortAnyAssocType} -</option>
+ <#list workEffortAssocTypes as workEffortAssocType>
+ <option value="${workEffortAssocType.workEffortAssocTypeId}">${workEffortAssocType.description}</option>
+ </#list>
+ </select>
+ ${uiLabelMap.WorkEffortIncludeAllSubWorkEfforts}?
+ ${uiLabelMap.CommonYes}<input type="radio" name="SEARCH_SUB_WORK_EFFORTS" value="Y" checked/>
+ ${uiLabelMap.CommonNo}<input type="radio" name="SEARCH_SUB_WORK_EFFORTS" value="N"/>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td align="right" valign="middle">
+ <div class="tabletext">${uiLabelMap.PartyPartyId}:</div>
+ </td>
+ <td valign="middle">
+ <div class="tabletext">
+ <input type="text" class="inputBox" name="partyId" size="40" value="${requestParameters.partyId?if_exists}"/>
+ <a href="javascript:call_fieldlookup2(document.advToKeyWordSearchForm.partyId,'LookupPartyName');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td align="right" valign="middle">
+ <div class="tabletext">${uiLabelMap.PartyRoleTypeId}:</div>
+ </td>
+ <td valign="middle">
+ <div class="tabletext">
+ <select class="selectBox" name="partyRoleTypeId">
+ <option value="">- ${uiLabelMap.CommonAnyRoleType} -</option>
+ <#list roleTypes as roleType>
+ <option value="${roleType.roleTypeId}">${roleType.description}</option>
+ </#list>
+ </select>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td align="right" valign="middle">
+ <div class="tabletext">${uiLabelMap.WorkEffortProductId1}:</div>
+ </td>
+ <td valign="middle">
+ <div class="tabletext">
+ <input type="text" class="inputBox" name="productId_1" size="40" value="${requestParameters.productId_1?if_exists}"/>
+ <a href="javascript:call_fieldlookup2(document.advToKeyWordSearchForm.productId_1,'LookupProduct');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td align="right" valign="middle">
+ <div class="tabletext">${uiLabelMap.WorkEffortProductId2}:</div>
+ </td>
+ <td valign="middle">
+ <div class="tabletext">
+ <input type="text" class="inputBox" name="productId_2" size="40" value="${requestParameters.productId_2?if_exists}"/>
+ <a href="javascript:call_fieldlookup2(document.advToKeyWordSearchForm.productId_2,'LookupProduct');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td width='25%' align='right'>
+ <div class='tableheadtext'>${uiLabelMap.CommonDateFilter}</div>
+ </td>
+ <td>
+ <table border='0' cellspacing='0' cellpadding='0'>
+ <tr>
+ <td nowrap>
+ <input type='text' size='25' class='inputBox' name='fromDate' value='${requestParameters.fromDate?if_exists}'/>
+ <a href="javascript:call_cal(document.advToKeyWordSearchForm.fromDate,'${fromDateStr}');"><img src='/images/cal.gif' width='16' height='16' border='0' alt='Calendar'/></a>
+ <span class='tabletext'>${uiLabelMap.CommonFrom}</span>
+ </td>
+ </tr>
+ <tr>
+ <td nowrap>
+ <input type='text' size='25' class='inputBox' name='thruDate' value='${requestParameters.thruDate?if_exists}'/>
+ <a href="javascript:call_cal(document.advToKeyWordSearchForm.thruDate,'${thruDateStr}');"><img src='/images/cal.gif' width='16' height='16' border='0' alt='Calendar'/></a>
+ <span class='tabletext'>${uiLabelMap.CommonThru}</span>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
<tr>
<td align="right" valign="middle">
<div class="tabletext">${uiLabelMap.CommonSortedBy}:</div>
Modified: ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchResults.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchResults.ftl?view=diff&rev=493684&r1=493683&r2=493684
==============================================================================
--- ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchResults.ftl (original)
+++ ofbiz/trunk/applications/workeffort/webapp/workeffort/find/WorkEffortSearchResults.ftl Sun Jan 7 00:56:16 2007
@@ -17,10 +17,10 @@
<div class="head1">${uiLabelMap.WorkEffortSearchWorkEfforts}, <span class="head2">${uiLabelMap.ProductSearchFor}:</span></div>
<#list searchConstraintStrings as searchConstraintString>
- <div class="tabletext"> <a href="<@o...@ofbizUrl>" class="buttontext">[X]</a> ${searchConstraintString}</div>
+ <div class="tabletext"> <a href="<@o...@ofbizUrl>" class="buttontext">X</a> ${searchConstraintString}</div>
</#list>
<div class="tabletext">${uiLabelMap.CommonSortedBy}: ${searchSortOrderString}</div>
-<div class="tabletext"><a href="<@o...@ofbizUrl>" class="buttontext">[${uiLabelMap.CommonRefine} ${uiLabelMap.CommonSearch}]</a></div>
+<div class="tabletext"><a href="<@o...@ofbizUrl>" class="buttontext">${uiLabelMap.CommonRefine} ${uiLabelMap.CommonSearch}</a></div>
<#if !workEffortIds?has_content>
<br/><div class="head2"> ${uiLabelMap.ProductNoResultsFound}.</div>
@@ -55,7 +55,7 @@
<#assign workEffort = delegator.findByPrimaryKey("WorkEffort", Static["org.ofbiz.base.util.UtilMisc"].toMap("workEffortId", workEffortId))>
<tr>
<td>
- <a href="<@o...@ofbizUrl>" class="buttontext">[${workEffortId}] ${(workEffort.workEffortName)?if_exists}</a>
+ <a href="<@o...@ofbizUrl>" class="buttontext">${workEffortId} ${(workEffort.workEffortName)?if_exists}</a>
</td>
</tr>
</#list>