svn commit: r607072 [1/4] - in /ofbiz/trunk/applications/product: webapp/catalog/product/ widget/catalog/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r607072 [1/4] - in /ofbiz/trunk/applications/product: webapp/catalog/product/ widget/catalog/

mrisaliti
Author: mrisaliti
Date: Thu Dec 27 05:50:05 2007
New Revision: 607072

URL: http://svn.apache.org/viewvc?rev=607072&view=rev
Log:
Product forms (ftl/widgets screen) has now the same look and feel (Part of issue OFBIZ-1544)

Modified:
    ofbiz/trunk/applications/product/webapp/catalog/product/ApplyFeaturesFromCategory.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/CreateVirtualWithVariantsForm.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductAssoc.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductContent.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductDupForm.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductFeatures.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductInventoryItems.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductParties.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditProductQuickAdmin.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/EditVirtualProductInventory.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/ProductForms.xml
    ofbiz/trunk/applications/product/webapp/catalog/product/ProductTabBar.ftl
    ofbiz/trunk/applications/product/webapp/catalog/product/QuickAddVariants.ftl
    ofbiz/trunk/applications/product/widget/catalog/ProductScreens.xml

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/ApplyFeaturesFromCategory.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/ApplyFeaturesFromCategory.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/ApplyFeaturesFromCategory.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/ApplyFeaturesFromCategory.ftl Thu Dec 27 05:50:05 2007
@@ -18,15 +18,13 @@
 -->
 
 <#if curProductFeatureCategory?exists>
-<a href="<@ofbizUrl>EditFeature?productFeatureCategoryId=${productFeatureCategoryId?if_exists}</@ofbizUrl>" class="buttontext">[${uiLabelMap.ProductCreateNewFeature}]</a>
+<a href="<@ofbizUrl>EditFeature?productFeatureCategoryId=${productFeatureCategoryId?if_exists}</@ofbizUrl>" class="buttontext">${uiLabelMap.ProductCreateNewFeature}</a>
 <#elseif productFeatureGroup?exists>
-<a href="<@ofbizUrl>EditFeatureGroupAppls?productFeatureGroupId=${productFeatureGroup.productFeatureGroupId?if_exists}</@ofbizUrl>" class="buttontext">[${uiLabelMap.CommonEdit} ${productFeatureGroup.description?if_exists}]</a>
+<a href="<@ofbizUrl>EditFeatureGroupAppls?productFeatureGroupId=${productFeatureGroup.productFeatureGroupId?if_exists}</@ofbizUrl>" class="buttontext">${uiLabelMap.CommonEdit} ${productFeatureGroup.description?if_exists}</a>
 </#if>
 <#if productId?has_content>
-    <div>
-        <a href="<@ofbizUrl>EditProduct?productId=${productId}</@ofbizUrl>" class="buttontext">[${uiLabelMap.ProductReturnToEditProduct}]</a>
-        <a href="<@ofbizUrl>EditProductFeatures?productId=${productId}</@ofbizUrl>" class="buttontext">[${uiLabelMap.ProductReturnToEditProductFeatures}]</a>
-    </div>
+    <a href="<@ofbizUrl>EditProduct?productId=${productId}</@ofbizUrl>" class="buttontext">${uiLabelMap.ProductReturnToEditProduct}</a>
+    <a href="<@ofbizUrl>EditProductFeatures?productId=${productId}</@ofbizUrl>" class="buttontext">${uiLabelMap.ProductReturnToEditProductFeatures}</a>
 </#if>
 
 <#if (listSize > 0)>
@@ -35,15 +33,15 @@
     <#if productId?has_content>
       <#assign productString = "&productId=" + productId>
     </#if>
-    <table border="0" cellpadding="2">
+    <table cellspacing="0" class="basic-table">
         <tr>
         <td align="right">
-            <span class="tabletext">
+            <span>
             <b>
             <#if (viewIndex > 0)>
             <a href="<@ofbizUrl>ApplyFeaturesFromCategory?productFeatureCategoryId=${productFeatureCategoryId?if_exists}&productFeatureApplTypeId=${selectedFeatureApplTypeId?if_exists}&VIEW_SIZE=${viewSize}&VIEW_INDEX=${viewIndex-1}${productString?if_exists}</@ofbizUrl>" class="buttontext">[${uiLabelMap.CommonPrevious}]</a> |
             </#if>
-            ${lowIndex+1} - ${highIndex}${uiLabelMap.CommonOf} ${listSize}
+            ${lowIndex+1} - ${highIndex} ${uiLabelMap.CommonOf} ${listSize}
             <#if (listSize > highIndex)>
             | <a href="<@ofbizUrl>ApplyFeaturesFromCategory?productFeatureCategoryId=${productFeatureCategoryId?if_exists}&productFeatureApplTypeId=${selectedFeatureApplTypeId?if_exists}&VIEW_SIZE=${viewSize}&VIEW_INDEX=${viewIndex+1}${productString?if_exists}</@ofbizUrl>" class="buttontext">[${uiLabelMap.CommonNext}]</a>
             </#if>
@@ -53,50 +51,56 @@
         </tr>
     </table>
 </#if>
-<table border="1" cellpadding="2" cellspacing="0">
+<table cellspacing="0" class="basic-table">
 <form method="post" action="<@ofbizUrl>ApplyFeaturesToProduct</@ofbizUrl>" name="selectAllForm">
   <input type="hidden" name="_useRowSubmit" value="Y">
   <input type="hidden" name="_checkGlobalScope" value="Y">
   <input type="hidden" name="productId" value="${productId}">
-
-  <tr class="viewOneTR1">
-    <td><div class="tabletext"><b>${uiLabelMap.CommonId}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.CommonDescription}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.ProductFeatureType}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.ProductApplType}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.CommonFromDate}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.CommonThruDate}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.ProductAmount}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.CommonSequence}</b></div></td>
-    <td><div class="tabletext"><b>${uiLabelMap.CommonAll}<input type="checkbox" name="selectAll" value="${uiLabelMap.CommonY}" onclick="javascript:toggleAll(this, 'selectAllForm');"></div></td>
+  <tr class="header-row">
+    <td><b>${uiLabelMap.CommonId}</b></td>
+    <td><b>${uiLabelMap.CommonDescription}</b></td>
+    <td><b>${uiLabelMap.ProductFeatureType}</b></td>
+    <td><b>${uiLabelMap.ProductApplType}</b></td>
+    <td><b>${uiLabelMap.CommonFromDate}</b></td>
+    <td><b>${uiLabelMap.CommonThruDate}</b></td>
+    <td><b>${uiLabelMap.ProductAmount}</b></td>
+    <td><b>${uiLabelMap.CommonSequence}</b></td>
+    <td><b>${uiLabelMap.CommonAll}<input type="checkbox" name="selectAll" value="${uiLabelMap.CommonY}" onclick="javascript:toggleAll(this, 'selectAllForm');"></td>
   </tr>
 <#assign rowCount = 0>
+<#assign rowClass = "2">
 <#if (listSize > 0)>
 <#list productFeatures as productFeature>
   <#assign curProductFeatureType = productFeature.getRelatedOneCache("ProductFeatureType")>
-    <tr valign="middle" class="viewOneTR1">
+    <tr valign="middle"<#if rowClass == "1"> class="alternate-row"</#if>>
         <input type="hidden" name="productFeatureId_o_${rowCount}" value="${productFeature.productFeatureId}">
         <td><a href="<@ofbizUrl>EditFeature?productFeatureId=${productFeature.productFeatureId}</@ofbizUrl>" class="buttontext">${productFeature.productFeatureId}</a></td>
         <td>${productFeature.description}</td>
         <td><#if curProductFeatureType?exists>${curProductFeatureType.description}<#else> [${productFeature.productFeatureTypeId}]</#if></td>
         <td>
-          <select name="productFeatureApplTypeId_o_${rowCount}" size="1" class="selectBox">
+          <select name="productFeatureApplTypeId_o_${rowCount}" size="1">
             <#list productFeatureApplTypes as productFeatureApplType>
-              <option value="${productFeatureApplType.productFeatureApplTypeId}" <#if (selectedFeatureApplTypeId?has_content) && (productFeatureApplType.productFeatureApplTypeId == selectedFeatureApplTypeId)>selected</#if>>${productFeatureApplType.description}</option>
+              <option value="${productFeatureApplType.productFeatureApplTypeId}" <#if (selectedFeatureApplTypeId?has_content) && (productFeatureApplType.productFeatureApplTypeId == selectedFeatureApplTypeId)>selected</#if>>${productFeatureApplType.get("description", locale)}</option>
             </#list>
           </select>
         </td>
-        <td><input type="text" size="25" name="fromDate_o_${rowCount}" class="inputBox"><a href="javascript:call_cal(document.selectAllForm.fromDate_o_${rowCount}, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a></td>
-        <td><input type="text" size="25" name="thruDate_o_${rowCount}" class="inputBox"><a href="javascript:call_cal(document.selectAllForm.thruDate_o_${rowCount}, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a></td>
-        <td><input type="text" size="6" name="amount_o_${rowCount}" class="inputBox" value="${productFeature.defaultAmount?if_exists}"></td>
-        <td><input type="text" size="5" name="sequenceNum_o_${rowCount}" class="inputBox" value="${productFeature.defaultSequenceNum?if_exists}"></td>
+        <td><input type="text" size="25" name="fromDate_o_${rowCount}"><a href="javascript:call_cal(document.selectAllForm.fromDate_o_${rowCount}, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a></td>
+        <td><input type="text" size="25" name="thruDate_o_${rowCount}"><a href="javascript:call_cal(document.selectAllForm.thruDate_o_${rowCount}, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a></td>
+        <td><input type="text" size="6" name="amount_o_${rowCount}" value="${productFeature.defaultAmount?if_exists}"></td>
+        <td><input type="text" size="5" name="sequenceNum_o_${rowCount}" value="${productFeature.defaultSequenceNum?if_exists}"></td>
         <td align="right">              
             <input type="checkbox" name="_rowSubmit_o_${rowCount}" value="Y" onclick="javascript:checkToggle(this, 'selectAllForm');">
         </td>
     </tr>
     <#assign rowCount = rowCount + 1>
+    <#-- toggle the row color -->
+    <#if rowClass == "2">
+        <#assign rowClass = "1">
+    <#else>
+        <#assign rowClass = "2">
+    </#if>
 </#list>
-<tr><td colspan="9" align="center"><input type="submit" value="Apply"></td></tr>
+<tr><td colspan="9" align="center"><input type="submit" value="${uiLabelMap.CommonApply}"></td></tr>
 </#if>
 <input type="hidden" name="_rowCount" value="${rowCount?if_exists}"/>
 </form>

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/CreateVirtualWithVariantsForm.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/CreateVirtualWithVariantsForm.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/CreateVirtualWithVariantsForm.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/CreateVirtualWithVariantsForm.ftl Thu Dec 27 05:50:05 2007
@@ -16,21 +16,25 @@
 specific language governing permissions and limitations
 under the License.
 -->
-
-<div class="tabletext"><b>${uiLabelMap.ProductQuickCreateVirtualFromVariants}</b></div>
-<form action="<@ofbizUrl>quickCreateVirtualWithVariants</@ofbizUrl>" method="post" style="margin: 0;" name="quickCreateVirtualWithVariants">
-    <div>
-        <span class="tabletext">${uiLabelMap.ProductVariantProductIds}:</span>
-        <textarea name="variantProductIdsBag" rows="6" cols="20"></textarea>
-    </div>
-    <div>
-        <span class="tabletext">Hazmat:</span>
-        <select name="productFeatureIdOne">
-            <option value="">- ${uiLabelMap.CommonNone} -</option>
-            <#list hazmatFeatures as hazmatFeature>
-                <option value="${hazmatFeature.productFeatureId}">${hazmatFeature.description}</option>
-            </#list>
-        </select>
-        <input type="submit" value="${uiLabelMap.ProductCreateVirtualProduct}"/>
-    </div>
-</form>
+<table cellspacing="0" class="basic-table">
+    <form action="<@ofbizUrl>quickCreateVirtualWithVariants</@ofbizUrl>" method="post" name="quickCreateVirtualWithVariants">
+    <tr class="header-row">
+        <td><b>${uiLabelMap.ProductQuickCreateVirtualFromVariants}</b></td>
+    </tr>
+    <tr>
+        <td>
+            <br/>
+            <span class="label">${uiLabelMap.ProductVariantProductIds}:</span>
+            <textarea name="variantProductIdsBag" rows="6" cols="20"></textarea>
+            <span class="label">Hazmat:</span>
+            <select name="productFeatureIdOne">
+                <option value="">- ${uiLabelMap.CommonNone} -</option>
+                <#list hazmatFeatures as hazmatFeature>
+                    <option value="${hazmatFeature.productFeatureId}">${hazmatFeature.description}</option>
+                </#list>
+            </select>
+            <input type="submit" value="${uiLabelMap.ProductCreateVirtualProduct}"/>
+        </td>
+    </tr>
+    </form>
+</table>
\ No newline at end of file

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/EditProductAssoc.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/EditProductAssoc.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/EditProductAssoc.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/EditProductAssoc.ftl Thu Dec 27 05:50:05 2007
@@ -16,228 +16,238 @@
 specific language governing permissions and limitations
 under the License.
 -->
-    <form action="<@ofbizUrl>UpdateProductAssoc</@ofbizUrl>" method="post" style="margin: 0;" name="editProductAssocForm">
-    <input type="hidden" name="productId" value="${productId?if_exists}">
-    <table border="0" cellpadding="2" cellspacing="0">
-    
-    <#if !(productAssoc?exists)>
-        <#if productId?exists && productIdTo?exists && productAssocTypeId?exists && fromDate?exists>
-<#--            <div class="tabletext"><b>Association not found: Product Id=${productId?if_exists}, Product Id To=${productIdTo?if_exists}, Association Type Id=${productAssocTypeId?if_exists}, From Date=${fromDate?if_exists}.</b></div> -->
-            <div class="tabletext"><b><#assign uiLabelWithVar=uiLabelMap.ProductAssociationNotFound?interpret><@uiLabelWithVar/></b></div>
-            <input type="hidden" name="UPDATE_MODE" value="CREATE">
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductId}</div></td>
-            <td>&nbsp;</td>
-            <td><input type="text" class="inputBox" name="PRODUCT_ID" size="20" maxlength="40" value="${productId?if_exists}"></td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductIdTo}</div></td>
-            <td>&nbsp;</td>
-            <td><input type="text" class="inputBox" name="PRODUCT_ID_TO" size="20" maxlength="40" value="${productIdTo?if_exists}"></td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductAssociationTypeId}</div></td>
-            <td>&nbsp;</td>
-            <td>
-                <select class="selectBox" name="PRODUCT_ASSOC_TYPE_ID" size="1">
-                <#if productAssocTypeId?has_content>
-                    <#assign curAssocType = delegator.findByPrimaryKey("ProductAssocType", Static["org.ofbiz.base.util.UtilMisc"].toMap("productAssocTypeId", productAssocTypeId))>
-                    <#if curAssocType?exists>
-                        <option selected value="${(curAssocType.productAssocTypeId)?if_exists}">${(curAssocType.get("description",locale))?if_exists}</option>
-                        <option value="${(curAssocType.productAssocTypeId)?if_exists}"></option>
-                    </#if>
+<form action="<@ofbizUrl>UpdateProductAssoc</@ofbizUrl>" method="post" style="margin: 0;" name="editProductAssocForm">
+<input type="hidden" name="productId" value="${productId?if_exists}">
+<table cellspacing="0" class="basic-table">
+
+<#if !(productAssoc?exists)>
+    <#if productId?exists && productIdTo?exists && productAssocTypeId?exists && fromDate?exists>
+        <div><b><#assign uiLabelWithVar=uiLabelMap.ProductAssociationNotFound?interpret><@uiLabelWithVar/></b></div>
+        <input type="hidden" name="UPDATE_MODE" value="CREATE">
+        <tr>
+        <td align="right" class="label">${uiLabelMap.ProductProductId}</td>
+        <td>&nbsp;</td>
+        <td><input type="text" name="PRODUCT_ID" size="20" maxlength="40" value="${productId?if_exists}"></td>
+        </tr>
+        <tr>
+        <td align="right" class="label">${uiLabelMap.ProductProductIdTo}</td>
+        <td>&nbsp;</td>
+        <td><input type="text" name="PRODUCT_ID_TO" size="20" maxlength="40" value="${productIdTo?if_exists}"></td>
+        </tr>
+        <tr>
+        <td align="right" class="label">${uiLabelMap.ProductAssociationTypeId}</td>
+        <td>&nbsp;</td>
+        <td>
+            <select name="PRODUCT_ASSOC_TYPE_ID" size="1">
+            <#if productAssocTypeId?has_content>
+                <#assign curAssocType = delegator.findByPrimaryKey("ProductAssocType", Static["org.ofbiz.base.util.UtilMisc"].toMap("productAssocTypeId", productAssocTypeId))>
+                <#if curAssocType?exists>
+                    <option selected value="${(curAssocType.productAssocTypeId)?if_exists}">${(curAssocType.get("description",locale))?if_exists}</option>
+                    <option value="${(curAssocType.productAssocTypeId)?if_exists}"></option>
                 </#if>
-                <#list assocTypes as assocType>
-                    <option value="${(assocType.productAssocTypeId)?if_exists}">${(assocType.get("description",locale))?if_exists}</option>
-                </#list>
-                </select>
-            </td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.CommonFromDate}</div></td>
-            <td>&nbsp;</td>
-            <td>
-                <div class="tabletext">
-                    <input type="text" class="inputBox" name="FROM_DATE" size="25" maxlength="40" value="${fromDate?if_exists}">
-                    <a href="javascript:call_cal(document.editProductAssocForm.FROM_DATE, '${fromDate?default(nowTimestampString)}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
-                    ${uiLabelMap.CommonSetNowEmpty}
-                </div>
-            </td>
-            </tr>
-        <#else>
-            <input type="hidden" name="UPDATE_MODE" value="CREATE">
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductId}</div></td>
-            <td>&nbsp;</td>
-            <td><input type="text" class="inputBox" name="PRODUCT_ID" size="20" maxlength="40" value="${productId?if_exists}"></td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductIdTo}</div></td>
-            <td>&nbsp;</td>
-            <td><input type="text" class="inputBox" name="PRODUCT_ID_TO" size="20" maxlength="40" value="${productIdTo?if_exists}">
-            <a href="javascript:call_fieldlookup2(document.editProductAssocForm.PRODUCT_ID_TO,'LookupProduct');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a></td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductAssociationTypeId}</div></td>
-            <td>&nbsp;</td>
-            <td>
-                <select class="selectBox" name="PRODUCT_ASSOC_TYPE_ID" size="1">
-                <-- <option value="">&nbsp;</option> -->
-                <#list assocTypes as assocType>
-                    <option value="${(assocType.productAssocTypeId)?if_exists}">${(assocType.get("description",locale))?if_exists}</option>
-                </#list>
-                </select>
-            </td>
-            </tr>
-            <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.CommonFromDate}</div></td>
-            <td>&nbsp;</td>
-            <td>
-                <div class="tabletext">
-                    <input type="text" class="inputBox" name="FROM_DATE" size="25" maxlength="40" value="">
-                    <a href="javascript:call_cal(document.editProductAssocForm.FROM_DATE, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
-                    ${uiLabelMap.CommonSetNowEmpty}
-                </div>
-            </td>
-            </tr>
-        </#if>
-    <#else>
-        <#assign isCreate = false>
-        <#assign curProductAssocType = productAssoc.getRelatedOneCache("ProductAssocType")>
-        <input type="hidden" name="UPDATE_MODE" value="UPDATE">
-        <input type="hidden" name="PRODUCT_ID" value="${productId?if_exists}">
-        <input type="hidden" name="PRODUCT_ID_TO" value="${productIdTo?if_exists}">
-        <input type="hidden" name="PRODUCT_ASSOC_TYPE_ID" value="${productAssocTypeId?if_exists}">
-        <input type="hidden" name="FROM_DATE" value="${fromDate?if_exists}">
+            </#if>
+            <#list assocTypes as assocType>
+                <option value="${(assocType.productAssocTypeId)?if_exists}">${(assocType.get("description",locale))?if_exists}</option>
+            </#list>
+            </select>
+        </td>
+        </tr>
         <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductId}</div></td>
-            <td>&nbsp;</td>
-            <td><b>${productId?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
+        <td align="right" class="label">${uiLabelMap.CommonFromDate}</td>
+        <td>&nbsp;</td>
+        <td>
+            <div>
+                <input type="text" name="FROM_DATE" size="25" maxlength="40" value="${fromDate?if_exists}">
+                <a href="javascript:call_cal(document.editProductAssocForm.FROM_DATE, '${fromDate?default(nowTimestampString)}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
+                ${uiLabelMap.CommonSetNowEmpty}
+            </div>
+        </td>
         </tr>
+    <#else>
+        <input type="hidden" name="UPDATE_MODE" value="CREATE">
         <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductProductIdTo}</div></td>
-            <td>&nbsp;</td>
-            <td><b>${productIdTo?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
+        <td align="right" class="label">${uiLabelMap.ProductProductId}</td>
+        <td>&nbsp;</td>
+        <td><input type="text" name="PRODUCT_ID" size="20" maxlength="40" value="${productId?if_exists}"></td>
         </tr>
         <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.ProductAssociationType}</div></td>
-            <td>&nbsp;</td>
-            <td><b><#if curProductAssocType?exists>${(curProductAssocType.get("description",locale))?if_exists}<#else> ${productAssocTypeId?if_exists}</#if></b> ${uiLabelMap.ProductRecreateAssociation}</td>
+        <td align="right" class="label">${uiLabelMap.ProductProductIdTo}</td>
+        <td>&nbsp;</td>
+        <td><input type="text" name="PRODUCT_ID_TO" size="20" maxlength="40" value="${productIdTo?if_exists}">
+        <a href="javascript:call_fieldlookup2(document.editProductAssocForm.PRODUCT_ID_TO,'LookupProduct');"><img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'/></a></td>
         </tr>
         <tr>
-            <td align="right"><div class="tabletext">${uiLabelMap.CommonFromDate}</div></td>
-            <td>&nbsp;</td>
-            <td><b>${fromDate?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
+        <td align="right" class="label">${uiLabelMap.ProductAssociationTypeId}</td>
+        <td>&nbsp;</td>
+        <td>
+            <select name="PRODUCT_ASSOC_TYPE_ID" size="1">
+            <-- <option value="">&nbsp;</option> -->
+            <#list assocTypes as assocType>
+                <option value="${(assocType.productAssocTypeId)?if_exists}">${(assocType.get("description",locale))?if_exists}</option>
+            </#list>
+            </select>
+        </td>
         </tr>
-    </#if>
-    <tr>
-        <td width="26%" align="right"><div class="tabletext">${uiLabelMap.CommonThruDate}</div></td>
+        <tr>
+        <td align="right" class="label">${uiLabelMap.CommonFromDate}</td>
         <td>&nbsp;</td>
-        <td width="74%">
-        <div class="tabletext">
-            <input type="text" class="inputBox" name="THRU_DATE" <#if useValues> value="${productAssoc.thruDate?if_exists}"<#else>value="${(request.getParameter("THRU_DATE"))?if_exists}"</#if> size="30" maxlength="30">
-            <a href="javascript:call_cal(document.editProductAssocForm.THRU_DATE, <#if useValues>'${productAssoc.thruDate?if_exists}'<#elseif (request.getParameter("THRU_DATE"))?exists>'${request.getParameter("THRU_DATE")}'<#else>'${nowTimestampString}'</#if>);"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
-        </div>
+        <td>
+            <div>
+                <input type="text" name="FROM_DATE" size="25" maxlength="40" value="">
+                <a href="javascript:call_cal(document.editProductAssocForm.FROM_DATE, '${nowTimestampString}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
+                ${uiLabelMap.CommonSetNowEmpty}
+            </div>
         </td>
-    </tr>
+        </tr>
+    </#if>
+<#else>
+    <#assign isCreate = false>
+    <#assign curProductAssocType = productAssoc.getRelatedOneCache("ProductAssocType")>
+    <input type="hidden" name="UPDATE_MODE" value="UPDATE">
+    <input type="hidden" name="PRODUCT_ID" value="${productId?if_exists}">
+    <input type="hidden" name="PRODUCT_ID_TO" value="${productIdTo?if_exists}">
+    <input type="hidden" name="PRODUCT_ASSOC_TYPE_ID" value="${productAssocTypeId?if_exists}">
+    <input type="hidden" name="FROM_DATE" value="${fromDate?if_exists}">
     <tr>
-        <td width="26%" align="right"><div class="tabletext">${uiLabelMap.ProductSequenceNum}</div></td>
+        <td align="right" class="label">${uiLabelMap.ProductProductId}</td>
         <td>&nbsp;</td>
-        <td width="74%"><input type="text" class="inputBox" name="SEQUENCE_NUM" <#if useValues>value="${(productAssoc.sequenceNum)?if_exists}"<#else>value="${(request.getParameter("SEQUENCE_NUM"))?if_exists}"</#if> size="5" maxlength="10"></td>
+        <td><b>${productId?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
     </tr>
     <tr>
-        <td width="26%" align="right"><div class="tabletext">${uiLabelMap.ProductReason}</div></td>
+        <td align="right" class="label">${uiLabelMap.ProductProductIdTo}</td>
         <td>&nbsp;</td>
-        <td width="74%"><input type="text" class="inputBox" name="REASON" <#if useValues>value="${(productAssoc.reason)?if_exists}"<#else>value="${(request.getParameter("REASON"))?if_exists}"</#if> size="60" maxlength="255"></td>
+        <td><b>${productIdTo?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
     </tr>
     <tr>
-        <td width="26%" align="right"><div class="tabletext">${uiLabelMap.ProductInstruction}</div></td>
+        <td align="right" class="label">${uiLabelMap.ProductAssociationType}</td>
         <td>&nbsp;</td>
-        <td width="74%"><input type="text" class="inputBox" name="INSTRUCTION" <#if useValues>value="${(productAssoc.instruction)?if_exists}"<#else>value="${(request.getParameter("INSTRUCTION"))?if_exists}"</#if> size="60" maxlength="255"></td>
+        <td><b><#if curProductAssocType?exists>${(curProductAssocType.get("description",locale))?if_exists}<#else> ${productAssocTypeId?if_exists}</#if></b> ${uiLabelMap.ProductRecreateAssociation}</td>
     </tr>
-    
     <tr>
-        <td width="26%" align="right"><div class="tabletext">${uiLabelMap.ProductQuantity}</div></td>
+        <td align="right" class="label">${uiLabelMap.CommonFromDate}</td>
         <td>&nbsp;</td>
-        <td width="74%"><input type="text" class="inputBox" name="QUANTITY" <#if useValues>value="${(productAssoc.quantity)?if_exists}"<#else>value="${(request.getParameter("QUANTITY"))?if_exists}"</#if> size="10" maxlength="15"></td>
-    </tr>
-    
-    <tr>
-        <td colspan="2">&nbsp;</td>
-        <td align="left"><input type="submit" <#if isCreate>value="${uiLabelMap.CommonCreate}"<#else>value="${uiLabelMap.CommonUpdate}"</#if>></td>
+        <td><b>${fromDate?if_exists}</b> ${uiLabelMap.ProductRecreateAssociation}</td>
     </tr>
+</#if>
+<tr>
+    <td width="26%" align="right" class="label">${uiLabelMap.CommonThruDate}</td>
+    <td>&nbsp;</td>
+    <td width="74%">
+    <div>
+        <input type="text" name="THRU_DATE" <#if useValues> value="${productAssoc.thruDate?if_exists}"<#else>value="${(request.getParameter("THRU_DATE"))?if_exists}"</#if> size="30" maxlength="30">
+        <a href="javascript:call_cal(document.editProductAssocForm.THRU_DATE, <#if useValues>'${productAssoc.thruDate?if_exists}'<#elseif (request.getParameter("THRU_DATE"))?exists>'${request.getParameter("THRU_DATE")}'<#else>'${nowTimestampString}'</#if>);"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
+    </div>
+    </td>
+</tr>
+<tr>
+    <td width="26%" align="right" class="label">${uiLabelMap.ProductSequenceNum}</td>
+    <td>&nbsp;</td>
+    <td width="74%"><input type="text" name="SEQUENCE_NUM" <#if useValues>value="${(productAssoc.sequenceNum)?if_exists}"<#else>value="${(request.getParameter("SEQUENCE_NUM"))?if_exists}"</#if> size="5" maxlength="10"></td>
+</tr>
+<tr>
+    <td width="26%" align="right" class="label">${uiLabelMap.ProductReason}</td>
+    <td>&nbsp;</td>
+    <td width="74%"><input type="text" name="REASON" <#if useValues>value="${(productAssoc.reason)?if_exists}"<#else>value="${(request.getParameter("REASON"))?if_exists}"</#if> size="60" maxlength="255"></td>
+</tr>
+<tr>
+    <td width="26%" align="right" class="label">${uiLabelMap.ProductInstruction}</td>
+    <td>&nbsp;</td>
+    <td width="74%"><input type="text" name="INSTRUCTION" <#if useValues>value="${(productAssoc.instruction)?if_exists}"<#else>value="${(request.getParameter("INSTRUCTION"))?if_exists}"</#if> size="60" maxlength="255"></td>
+</tr>
+
+<tr>
+    <td width="26%" align="right" class="label">${uiLabelMap.ProductQuantity}</td>
+    <td>&nbsp;</td>
+    <td width="74%"><input type="text" name="QUANTITY" <#if useValues>value="${(productAssoc.quantity)?if_exists}"<#else>value="${(request.getParameter("QUANTITY"))?if_exists}"</#if> size="10" maxlength="15"></td>
+</tr>
+
+<tr>
+    <td colspan="2">&nbsp;</td>
+    <td align="left"><input type="submit" <#if isCreate>value="${uiLabelMap.CommonCreate}"<#else>value="${uiLabelMap.CommonUpdate}"</#if>></td>
+</tr>
+</table>
+</form>
+<br/>
+<#if productId?exists && product?exists>
+    <br/>
+    <h2>${uiLabelMap.ProductAssociationsFromProduct}...</h2>        
+    <table cellspacing="0" class="basic-table">
+        <tr class="header-row">
+        <td><b>${uiLabelMap.ProductProductId}</b></td>
+        <td><b>${uiLabelMap.ProductName}</b></td>
+        <td><b>${uiLabelMap.CommonFromDateTime}</b></td>
+        <td><b>${uiLabelMap.CommonThruDateTime}</b></td>
+        <td><b>${uiLabelMap.ProductSeqNum}</b></td>
+        <td><b>${uiLabelMap.CommonQuantity}</b></td>
+        <td><b>${uiLabelMap.ProductAssociationType}</b></td>
+        <td><b>&nbsp;</b></td>
+        <td><b>&nbsp;</b></td>
+        </tr>
+        <#assign rowClass = "2">
+        <#list assocFromProducts as assocFromProduct>
+        <#assign listToProduct = assocFromProduct.getRelatedOneCache("AssocProduct")>
+        <#assign curProductAssocType = assocFromProduct.getRelatedOneCache("ProductAssocType")>
+        <tr valign="middle"<#if rowClass == "1"> class="alternate-row"</#if>>
+            <td><a href="<@ofbizUrl>EditProduct?productId=${(assocFromProduct.productIdTo)?if_exists}</@ofbizUrl>" class="buttontext">${(assocFromProduct.productIdTo)?if_exists}</a></td>
+            <td><#if listToProduct?exists><a href="<@ofbizUrl>EditProduct?productId=${(assocFromProduct.productIdTo)?if_exists}</@ofbizUrl>" class="buttontext">${(listToProduct.internalName)?if_exists}</a></#if>&nbsp;</td>
+            <td <#if (assocFromProduct.getTimestamp("fromDate"))?exists && nowDate.before(assocFromProduct.getTimestamp("fromDate"))> style="color: red;"</#if>>
+            ${(assocFromProduct.fromDate)?if_exists}&nbsp;</td>
+            <td <#if (assocFromProduct.getTimestamp("thruDate"))?exists && nowDate.after(assocFromProduct.getTimestamp("thruDate"))> style="color: red;"</#if>>
+            ${(assocFromProduct.thruDate)?if_exists}&nbsp;</td>
+            <td>&nbsp;${(assocFromProduct.sequenceNum)?if_exists}</td>
+            <td>&nbsp;${(assocFromProduct.quantity)?if_exists}<</td>
+            <td><#if curProductAssocType?exists> ${(curProductAssocType.get("description",locale))?if_exists}<#else>${(assocFromProduct.productAssocTypeId)?if_exists}</#if></td>
+            <td>
+            <a href="<@ofbizUrl>UpdateProductAssoc?UPDATE_MODE=DELETE&productId=${productId}&PRODUCT_ID=${productId}&PRODUCT_ID_TO=${(assocFromProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocFromProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocFromProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
+            ${uiLabelMap.CommonDelete}</a>
+            </td>
+            <td>
+            <a href="<@ofbizUrl>EditProductAssoc?productId=${productId}&PRODUCT_ID=${productId}&PRODUCT_ID_TO=${(assocFromProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocFromProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocFromProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
+            ${uiLabelMap.CommonEdit}</a>
+            </td>
+        </tr>
+        <#-- toggle the row color -->
+        <#if rowClass == "2">
+            <#assign rowClass = "1">
+        <#else>
+            <#assign rowClass = "2">
+        </#if>
+        </#list>
     </table>
-    </form>
     <br/>
-    <#if productId?exists && product?exists>
-        <hr class="sepbar">
-        <h2>${uiLabelMap.ProductAssociationsFromProduct}...</h2>
-        
-        <table border="1" cellpadding="2" cellspacing="0">
-            <tr>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductProductId}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductName}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonFromDateTime}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonThruDateTime}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductSeqNum}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonQuantity}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductAssociationType}</b></div></td>
-            <td><div class="tabletext"><b>&nbsp;</b></div></td>
-            <td><div class="tabletext"><b>&nbsp;</b></div></td>
-            </tr>
-            <#list assocFromProducts as assocFromProduct>
-            <#assign listToProduct = assocFromProduct.getRelatedOneCache("AssocProduct")>
-            <#assign curProductAssocType = assocFromProduct.getRelatedOneCache("ProductAssocType")>
-            <tr valign="middle">
-                <td><a href="<@ofbizUrl>EditProduct?productId=${(assocFromProduct.productIdTo)?if_exists}</@ofbizUrl>" class="buttontext">${(assocFromProduct.productIdTo)?if_exists}</a></td>
-                <td><#if listToProduct?exists><a href="<@ofbizUrl>EditProduct?productId=${(assocFromProduct.productIdTo)?if_exists}</@ofbizUrl>" class="buttontext">${(listToProduct.internalName)?if_exists}</a></#if>&nbsp;</td>
-                <td><div class="tabletext" <#if (assocFromProduct.getTimestamp("fromDate"))?exists && nowDate.before(assocFromProduct.getTimestamp("fromDate"))> style="color: red;"</#if>>
-                ${(assocFromProduct.fromDate)?if_exists}&nbsp;</div></td>
-                <td><div class="tabletext" <#if (assocFromProduct.getTimestamp("thruDate"))?exists && nowDate.after(assocFromProduct.getTimestamp("thruDate"))> style="color: red;"</#if>>
-                ${(assocFromProduct.thruDate)?if_exists}&nbsp;</div></td>
-                <td><div class="tabletext">&nbsp;${(assocFromProduct.sequenceNum)?if_exists}</div></td>
-                <td><div class="tabletext">&nbsp;${(assocFromProduct.quantity)?if_exists}</div></td>
-                <td><div class="tabletext"><#if curProductAssocType?exists> ${(curProductAssocType.get("description",locale))?if_exists}<#else>${(assocFromProduct.productAssocTypeId)?if_exists}</#if></div></td>
-                <td>
-                <a href="<@ofbizUrl>UpdateProductAssoc?UPDATE_MODE=DELETE&productId=${productId}&PRODUCT_ID=${productId}&PRODUCT_ID_TO=${(assocFromProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocFromProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocFromProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
-                ${uiLabelMap.CommonDelete}</a>
-                </td>
-                <td>
-                <a href="<@ofbizUrl>EditProductAssoc?productId=${productId}&PRODUCT_ID=${productId}&PRODUCT_ID_TO=${(assocFromProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocFromProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocFromProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
-                ${uiLabelMap.CommonEdit}</a>
-                </td>
-            </tr>
-            </#list>
-        </table>
-        
-        <hr class="sepbar">
-        <h2>${uiLabelMap.ProductAssociationsToProduct}...</h2>
-        <table border="1" cellpadding="2" cellspacing="0">
-            <tr>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductProductId}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductName}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonFromDateTime}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonThruDateTime}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductAssociationType}</b></div></td>
-            <td><div class="tabletext"><b>&nbsp;</b></div></td>
-            </tr>
-            <#list assocToProducts as assocToProduct>
-            <#assign listToProduct = assocToProduct.getRelatedOneCache("MainProduct")>
-            <#assign curProductAssocType = assocToProduct.getRelatedOneCache("ProductAssocType")>
-            <tr valign="middle">
-                <td><a href="<@ofbizUrl>EditProduct?productId=${(assocToProduct.productId)?if_exists}</@ofbizUrl>" class="buttontext">${(assocToProduct.productId)?if_exists}</a></td>
-                <td><#if listToProduct?exists><a href="<@ofbizUrl>EditProduct?productId=${(assocToProduct.productId)?if_exists}</@ofbizUrl>" class="buttontext">${(listToProduct.internalName)?if_exists}</a></#if></td>
-                <td><div class="tabletext">${(assocToProduct.getTimestamp("fromDate"))?if_exists}&nbsp;</div></td>
-                <td><div class="tabletext">${(assocToProduct.getTimestamp("thruDate"))?if_exists}&nbsp;</div></td>
-                <td><div class="tabletext"><#if curProductAssocType?exists> ${(curProductAssocType.get("description",locale))?if_exists}<#else> ${(assocToProduct.productAssocTypeId)?if_exists}</#if></div></td>
-                <td>
-                <a href="<@ofbizUrl>UpdateProductAssoc?UPDATE_MODE=DELETE&productId=${(assocToProduct.productIdTo)?if_exists}&PRODUCT_ID=${(assocToProduct.productId)?if_exists}&PRODUCT_ID_TO=${(assocToProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocToProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocToProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
-                ${uiLabelMap.CommonDelete}</a>
-                </td>
-            </tr>
-            </#list>
-        </table>
-
-        <br/>
-        <div class="tabletext">${uiLabelMap.CommonNote} : ${uiLabelMap.ProductRedExplanation}</div>
-    </#if>
+    <h2>${uiLabelMap.ProductAssociationsToProduct}...</h2>
+    <table cellspacing="0" class="basic-table">
+        <tr class="header-row">
+        <td><b>${uiLabelMap.ProductProductId}</b></td>
+        <td><b>${uiLabelMap.ProductName}</b></td>
+        <td><b>${uiLabelMap.CommonFromDateTime}</b></td>
+        <td><b>${uiLabelMap.CommonThruDateTime}</b></td>
+        <td><b>${uiLabelMap.ProductAssociationType}</b></td>
+        <td><b>&nbsp;</b></td>
+        </tr>
+        <#assign rowClass = "2">
+        <#list assocToProducts as assocToProduct>
+        <#assign listToProduct = assocToProduct.getRelatedOneCache("MainProduct")>
+        <#assign curProductAssocType = assocToProduct.getRelatedOneCache("ProductAssocType")>
+        <tr valign="middle"<#if rowClass == "1"> class="alternate-row"</#if>>
+            <td><a href="<@ofbizUrl>EditProduct?productId=${(assocToProduct.productId)?if_exists}</@ofbizUrl>" class="buttontext">${(assocToProduct.productId)?if_exists}</a></td>
+            <td><#if listToProduct?exists><a href="<@ofbizUrl>EditProduct?productId=${(assocToProduct.productId)?if_exists}</@ofbizUrl>" class="buttontext">${(listToProduct.internalName)?if_exists}</a></#if></td>
+            <td>${(assocToProduct.getTimestamp("fromDate"))?if_exists}&nbsp;</td>
+            <td>${(assocToProduct.getTimestamp("thruDate"))?if_exists}&nbsp;</td>
+            <td><#if curProductAssocType?exists> ${(curProductAssocType.get("description",locale))?if_exists}<#else> ${(assocToProduct.productAssocTypeId)?if_exists}</#if></td>
+            <td>
+            <a href="<@ofbizUrl>UpdateProductAssoc?UPDATE_MODE=DELETE&productId=${(assocToProduct.productIdTo)?if_exists}&PRODUCT_ID=${(assocToProduct.productId)?if_exists}&PRODUCT_ID_TO=${(assocToProduct.productIdTo)?if_exists}&PRODUCT_ASSOC_TYPE_ID=${(assocToProduct.productAssocTypeId)?if_exists}&FROM_DATE=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(assocToProduct.getTimestamp("fromDate").toString())}&useValues=true</@ofbizUrl>" class="buttontext">
+            ${uiLabelMap.CommonDelete}</a>
+            </td>
+        </tr>
+        <#-- toggle the row color -->
+        <#if rowClass == "2">
+            <#assign rowClass = "1">
+        <#else>
+            <#assign rowClass = "2">
+        </#if>
+        </#list>
+    </table>
+    <br/>
+    <div>${uiLabelMap.CommonNote} : ${uiLabelMap.ProductRedExplanation}</div>
+</#if>

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/EditProductContent.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/EditProductContent.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/EditProductContent.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/EditProductContent.ftl Thu Dec 27 05:50:05 2007
@@ -29,127 +29,123 @@
     <#if fileType?has_content>
         <h3>${uiLabelMap.ProductResultOfImageUpload}</h3>
         <#if !(clientFileName?has_content)>
-            <div class='tabletext'>${uiLabelMap.ProductNoFileSpecifiedForUpload}.</div>
+            <div>${uiLabelMap.ProductNoFileSpecifiedForUpload}.</div>
         <#else>
-            <div class='tabletext'>${uiLabelMap.ProductTheFileOnYourComputer}: <b>${clientFileName?if_exists}</b></div>
-            <div class='tabletext'>${uiLabelMap.ProductServerFileName}: <b>${fileNameToUse?if_exists}</b></div>
-            <div class='tabletext'>${uiLabelMap.ProductServerDirectory}: <b>${imageServerPath?if_exists}</b></div>
-            <div class='tabletext'>${uiLabelMap.ProductTheUrlOfYourUploadedFile}: <b><a href="<@ofbizContentUrl>${imageUrl?if_exists}</@ofbizContentUrl>">${imageUrl?if_exists}</a></b></div>
+            <div>${uiLabelMap.ProductTheFileOnYourComputer}: <b>${clientFileName?if_exists}</b></div>
+            <div>${uiLabelMap.ProductServerFileName}: <b>${fileNameToUse?if_exists}</b></div>
+            <div>${uiLabelMap.ProductServerDirectory}: <b>${imageServerPath?if_exists}</b></div>
+            <div>${uiLabelMap.ProductTheUrlOfYourUploadedFile}: <b><a href="<@ofbizContentUrl>${imageUrl?if_exists}</@ofbizContentUrl>">${imageUrl?if_exists}</a></b></div>
         </#if>
     <br/>
     </#if>
-
-    <hr class="sepbar"/>
-    
-    <h2>${uiLabelMap.ProductOverrideSimpleFields}</h2>
     <form action="<@ofbizUrl>updateProductContent</@ofbizUrl>" method="post" style="margin: 0;" name="productForm">
-    <table border="0" cellpadding="2" cellspacing="0">
+    <table cellspacing="0" class="basic-table">
     <input type="hidden" name="productId" value="${productId?if_exists}">
     <tr>
-        <td width="20%" align="right" valign="top"><div class="tabletext"><b>${uiLabelMap.ProductProductName}</b></div></td>
+        <td width="20%" align="right" valign="top"><b>${uiLabelMap.ProductProductName}</b></td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-            <input type="text" class="inputBox" name="productName" value="${(product.productName?html)?if_exists}" size="30" maxlength="60">
+            <input type="text" name="productName" value="${(product.productName?html)?if_exists}" size="30" maxlength="60">
         </td>
     </tr>        
     <tr>
-        <td width="20%" align="right" valign="top"><div class="tabletext"><b>${uiLabelMap.ProductProductDescription}</b></div></td>
+        <td width="20%" align="right" valign="top"><b>${uiLabelMap.ProductProductDescription}</b></td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-            <textarea class="textAreaBox" name="description" cols="60" rows="2">${(product.description)?if_exists}</textarea>
+            <textarea name="description" cols="60" rows="2">${(product.description)?if_exists}</textarea>
         </td>
     </tr>        
     <tr>
-        <td width="20%" align="right" valign="top"><div class="tabletext"><b>${uiLabelMap.ProductLongDescription}</b></div></td>
+        <td width="20%" align="right" valign="top"><b>${uiLabelMap.ProductLongDescription}</b></td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-            <textarea class="textAreaBox dojo-ResizableTextArea" name="longDescription" cols="60" rows="7">${(product.longDescription)?if_exists}</textarea>
+            <textarea class="dojo-ResizableTextArea" name="longDescription" cols="60" rows="7">${(product.longDescription)?if_exists}</textarea>
         </td>
     </tr>        
     <tr>
-        <td width="20%" align="right" valign="top"><div class="tabletext"><b>${uiLabelMap.ProductDetailScreen}</b></div></td>
+        <td width="20%" align="right" valign="top"><b>${uiLabelMap.ProductDetailScreen}</b></td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-            <input type="text" class="inputBox" name="detailScreen" value="${(product.detailScreen)?if_exists}" size="60" maxlength="250">
-            <br/><span class="tabletext">${uiLabelMap.ProductIfNotSpecifiedDefaultsIsProductdetail} &quot;productdetail&quot;, ${uiLabelMap.ProductDetailScreenMessage}: &quot;component://ecommerce/widget/CatalogScreens.xml#productdetail&quot;</span>
+            <input type="text" name="detailScreen" value="${(product.detailScreen)?if_exists}" size="60" maxlength="250">
+            <br/><span class="tooltip">${uiLabelMap.ProductIfNotSpecifiedDefaultsIsProductdetail} &quot;productdetail&quot;, ${uiLabelMap.ProductDetailScreenMessage}: &quot;component://ecommerce/widget/CatalogScreens.xml#productdetail&quot;</span>
         </td>
     </tr>        
     <tr>
         <td width="20%" align="right" valign="top">
-            <div class="tabletext"><b>${uiLabelMap.ProductSmallImage}</b></div>
+            <div><b>${uiLabelMap.ProductSmallImage}</b></div>
             <#if (product.smallImageUrl)?exists>
                 <a href="<@ofbizContentUrl>${(product.smallImageUrl)?if_exists}</@ofbizContentUrl>" target="_blank"><img alt="Small Image" src="<@ofbizContentUrl>${(product.smallImageUrl)?if_exists}</@ofbizContentUrl>" height="40" width="40"></a>
             </#if>
         </td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-        <input type="text" class="inputBox" name="smallImageUrl" value="${(product.smallImageUrl)?default('')}" size="60" maxlength="255">
+        <input type="text" name="smallImageUrl" value="${(product.smallImageUrl)?default('')}" size="60" maxlength="255">
         <#if productId?has_content>
             <div>
-            <span class="tabletext">${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
-            <a href="javascript:insertImageName('small','${imageNameSmall}.jpg');" class="buttontext">[.jpg]</a>
-            <a href="javascript:insertImageName('small','${imageNameSmall}.gif');" class="buttontext">[.gif]</a>
-            <a href="javascript:insertImageName('small','');" class="buttontext">[${uiLabelMap.CommonClear}]</a>
+            <span>${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
+            <a href="javascript:insertImageName('small','${imageNameSmall}.jpg');" class="buttontext">.jpg</a>
+            <a href="javascript:insertImageName('small','${imageNameSmall}.gif');" class="buttontext">.gif</a>
+            <a href="javascript:insertImageName('small','');" class="buttontext">${uiLabelMap.CommonClear}</a>
             </div>
         </#if>
         </td>
     </tr>
     <tr>
         <td width="20%" align="right" valign="top">
-            <div class="tabletext"><b>${uiLabelMap.ProductMediumImage}</b></div>
+            <div><b>${uiLabelMap.ProductMediumImage}</b></div>
             <#if (product.mediumImageUrl)?exists>
                 <a href="<@ofbizContentUrl>${product.mediumImageUrl}</@ofbizContentUrl>" target="_blank"><img alt="Medium Image" src="<@ofbizContentUrl>${product.mediumImageUrl}</@ofbizContentUrl>" height="40" width="40"></a>
             </#if>
         </td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-        <input type="text" class="inputBox" name="mediumImageUrl" value="${(product.mediumImageUrl)?default('')}" size="60" maxlength="255">
+        <input type="text" name="mediumImageUrl" value="${(product.mediumImageUrl)?default('')}" size="60" maxlength="255">
         <#if productId?has_content>
             <div>
-            <span class="tabletext">${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
-            <a href="javascript:insertImageName('medium','${imageNameMedium}.jpg');" class="buttontext">[.jpg]</a>
-            <a href="javascript:insertImageName('medium','${imageNameMedium}.gif');" class="buttontext">[.gif]</a>
-            <a href="javascript:insertImageName('medium','');" class="buttontext">[${uiLabelMap.CommonClear}]</a>
+            <span>${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
+            <a href="javascript:insertImageName('medium','${imageNameMedium}.jpg');" class="buttontext">.jpg</a>
+            <a href="javascript:insertImageName('medium','${imageNameMedium}.gif');" class="buttontext">.gif</a>
+            <a href="javascript:insertImageName('medium','');" class="buttontext">${uiLabelMap.CommonClear}</a>
             </div>
         </#if>
         </td>
     </tr>
     <tr>
         <td width="20%" align="right" valign="top">
-            <div class="tabletext"><b>${uiLabelMap.ProductLargeImage}</b></div>
+            <div><b>${uiLabelMap.ProductLargeImage}</b></div>
             <#if (product.largeImageUrl)?exists>
                 <a href="<@ofbizContentUrl>${product.largeImageUrl}</@ofbizContentUrl>" target="_blank"><img alt="Large Image" src="<@ofbizContentUrl>${product.largeImageUrl}</@ofbizContentUrl>" height="40" width="40"></a>
             </#if>
         </td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-        <input type="text" class="inputBox" name="largeImageUrl" value="${(product.largeImageUrl)?default('')}" size="60" maxlength="255">
+        <input type="text" name="largeImageUrl" value="${(product.largeImageUrl)?default('')}" size="60" maxlength="255">
         <#if productId?has_content>
             <div>
-            <span class="tabletext">${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
-            <a href="javascript:insertImageName('large','${imageNameLarge}.jpg');" class="buttontext">[.jpg]</a>
-            <a href="javascript:insertImageName('large','${imageNameLarge}.gif');" class="buttontext">[.gif]</a>
-            <a href="javascript:insertImageName('large','');" class="buttontext">[${uiLabelMap.CommonClear}]</a>
+            <span>${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
+            <a href="javascript:insertImageName('large','${imageNameLarge}.jpg');" class="buttontext">.jpg</a>
+            <a href="javascript:insertImageName('large','${imageNameLarge}.gif');" class="buttontext">.gif</a>
+            <a href="javascript:insertImageName('large','');" class="buttontext">${uiLabelMap.CommonClear}</a>
             </div>
         </#if>
         </td>
     </tr>
     <tr>
         <td width="20%" align="right" valign="top">
-            <div class="tabletext"><b>${uiLabelMap.ProductDetailImage}</b></div>
+            <div><b>${uiLabelMap.ProductDetailImage}</b></div>
             <#if (product.detailImageUrl)?exists>
                 <a href="<@ofbizContentUrl>${product.detailImageUrl}</@ofbizContentUrl>" target="_blank"><img alt="Detail Image" src="<@ofbizContentUrl>${product.detailImageUrl}</@ofbizContentUrl>" height="40" width="40"></a>
             </#if>
         </td>
         <td>&nbsp;</td>
         <td width="80%" colspan="4" valign="top">
-        <input type="text" class="inputBox" name="detailImageUrl" value="${(product.detailImageUrl)?default('')}" size="60" maxlength="255">
+        <input type="text" name="detailImageUrl" value="${(product.detailImageUrl)?default('')}" size="60" maxlength="255">
         <#if productId?has_content>
             <div>
-            <span class="tabletext">${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
-            <a href="javascript:insertImageName('detail','${imageNameDetail}.jpg');" class="buttontext">[.jpg]</a>
-            <a href="javascript:insertImageName('detail','${imageNameDetail}.gif');" class="buttontext">[.gif]</a>
-            <a href="javascript:insertImageName('detail','');" class="buttontext">[${uiLabelMap.CommonClear}]</a>
+            <span>${uiLabelMap.ProductInsertDefaultImageUrl}: </span>
+            <a href="javascript:insertImageName('detail','${imageNameDetail}.jpg');" class="buttontext">.jpg</a>
+            <a href="javascript:insertImageName('detail','${imageNameDetail}.gif');" class="buttontext">.gif</a>
+            <a href="javascript:insertImageName('detail','');" class="buttontext">${uiLabelMap.CommonClear}</a>
             </div>
         </#if>
         </td>
@@ -162,7 +158,7 @@
     </table>
     </form>
 
-    <hr class="sepbar"/>
+    <hr/>
 
     <script language="JavaScript" type="text/javascript">
         function setUploadUrl(newUrl) {
@@ -172,9 +168,9 @@
     </script>
     <h3>${uiLabelMap.ProductUploadImage}</h3>
     <form method="post" enctype="multipart/form-data" action="<@ofbizUrl>UploadProductImage?productId=${productId}&upload_file_type=small</@ofbizUrl>" name="imageUploadForm">
-        <input type="file" class="inputBox" size="50" name="fname">
+        <input type="file" size="50" name="fname">
         <br/>
-        <span class="tabletext">
+        <span>
             <input class="radioButton" type="radio" name="upload_file_type_bogus" value="small" checked onclick='setUploadUrl("<@ofbizUrl>UploadProductImage?productId=${productId}&upload_file_type=small</@ofbizUrl>");'>${uiLabelMap.CommonSmall}
             <input class="radioButton" type="radio" name="upload_file_type_bogus" value="medium" onclick='setUploadUrl("<@ofbizUrl>UploadProductImage?productId=${productId}&upload_file_type=medium</@ofbizUrl>");'>${uiLabelMap.CommonMedium}
             <input class="radioButton" type="radio" name="upload_file_type_bogus" value="large"onclick='setUploadUrl("<@ofbizUrl>UploadProductImage?productId=${productId}&upload_file_type=large</@ofbizUrl>");'>${uiLabelMap.CommonLarge}
@@ -182,4 +178,4 @@
         </span>
         <input type="submit" class="smallSubmit" value="${uiLabelMap.ProductUploadImage}">
     </form>
-</#if>
+</#if>
\ No newline at end of file

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/EditProductDupForm.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/EditProductDupForm.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/EditProductDupForm.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/EditProductDupForm.ftl Thu Dec 27 05:50:05 2007
@@ -16,56 +16,60 @@
 specific language governing permissions and limitations
 under the License.
 -->
-    <#if productId?exists>
-        <hr class="sepbar"/>
-        <h2>${uiLabelMap.ProductDuplicateProduct}</h2>
-        <form action="<@ofbizUrl>DuplicateProduct</@ofbizUrl>" method="post" style="margin: 0;">
-            <input type="hidden" name="oldProductId" value="${productId}"/>
-            <div>
-                <span class="tabletext">${uiLabelMap.ProductDuplicateRemoveSelectedWithNewId}:</span>
-                <input type="text" class="inputBox" size="20" maxlength="20" name="productId"/>&nbsp;<input type="submit" class="smallSubmit" value="${uiLabelMap.CommonDuplicate}!"/>
-            </div>
-            <div class="tabletext">
-                <b>${uiLabelMap.CommonDuplicate}:</b>
-                ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="duplicatePrices" value="Y" checked="checked"/>
-                ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="duplicateIDs" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="duplicateContent" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="duplicateCategoryMembers" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductAssocs}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAssocs" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAttributes" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductFeatureAppls}&nbsp;<input type="checkbox" class="checkBox" name="duplicateFeatureAppls" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductInventoryItems}&nbsp;<input type="checkbox" class="checkBox" name="duplicateInventoryItems" value="Y"/>
-            </div>
-            <div class="tabletext">
-                <b>${uiLabelMap.CommonRemove}:</b>
-                ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="removePrices" value="Y"/>
-                ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="removeIDs" value="Y"/>
-                ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="removeContent" value="Y"/>
-                ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="removeCategoryMembers" value="Y"/>
-                ${uiLabelMap.ProductAssocs}&nbsp;<input type="checkbox" class="checkBox" name="removeAssocs" value="Y"/>
-                ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="removeAttributes" value="Y"/>
-                ${uiLabelMap.ProductFeatureAppls}&nbsp;<input type="checkbox" class="checkBox" name="removeFeatureAppls" value="Y"/>
-                ${uiLabelMap.ProductInventoryItems}&nbsp;<input type="checkbox" class="checkBox" name="removeInventoryItems" value="Y"/>
-            </div>
-        </form>
-        <#if product?exists && product.isVirtual?if_exists == "Y">
-        <hr class="sepbar"/>
-        <h2>${uiLabelMap.ProductUpdateProductVariants}</h2>
-        <form action="<@ofbizUrl>UpdateProductVariants?productId=${productId}</@ofbizUrl>" method="post" style="margin: 0;">
-            <input type="hidden" name="virtualProductId" value="${productId}"/>
-            <div class="tabletext">
-                <b>${uiLabelMap.ProductUpdateProductVariants}:</b>
-                ${uiLabelMap.ProductRemoveBefore}&nbsp;<input type="checkbox" class="checkBox" name="removeBefore" value="Y"/>
-                ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="duplicatePrices" value="Y" checked="checked"/>
-                ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="duplicateIDs" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="duplicateContent" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="duplicateCategoryMembers" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAttributes" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductFacilities}&nbsp;<input type="checkbox" class="checkBox" name="duplicateFacilities" value="Y" checked="checked"/>
-                ${uiLabelMap.ProductLocations}&nbsp;<input type="checkbox" class="checkBox" name="duplicateLocations" value="Y" checked="checked"/>
-            </div>
-            <input type="submit" class="smallSubmit" value="${uiLabelMap.CommonGo}"/>
-        </form>
-        </#if>
-        <br/>
-    </#if>
+<#if productId?exists>
+    <div class="screenlet">
+        <div class="screenlet-title-bar">
+            <h3>${uiLabelMap.ProductDuplicateProduct}</h3>
+        </div>
+        <div class="screenlet-body">
+            <form action="<@ofbizUrl>DuplicateProduct</@ofbizUrl>" method="post" style="margin: 0;">
+                <input type="hidden" name="oldProductId" value="${productId}"/>
+                <div>
+                    <span>${uiLabelMap.ProductDuplicateRemoveSelectedWithNewId}:</span>
+                    <input type="text" size="20" maxlength="20" name="productId"/>&nbsp;<input type="submit" class="smallSubmit" value="${uiLabelMap.CommonDuplicate}!"/>
+                </div>
+                <div>
+                    <b>${uiLabelMap.CommonDuplicate}:</b>
+                    ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="duplicatePrices" value="Y" checked="checked"/>
+                    ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="duplicateIDs" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="duplicateContent" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="duplicateCategoryMembers" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductAssocs}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAssocs" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAttributes" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductFeatureAppls}&nbsp;<input type="checkbox" class="checkBox" name="duplicateFeatureAppls" value="Y" checked="checked"/>
+                    ${uiLabelMap.ProductInventoryItems}&nbsp;<input type="checkbox" class="checkBox" name="duplicateInventoryItems" value="Y"/>
+                </div>
+                <div>
+                    <b>${uiLabelMap.CommonRemove}:</b>
+                    ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="removePrices" value="Y"/>
+                    ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="removeIDs" value="Y"/>
+                    ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="removeContent" value="Y"/>
+                    ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="removeCategoryMembers" value="Y"/>
+                    ${uiLabelMap.ProductAssocs}&nbsp;<input type="checkbox" class="checkBox" name="removeAssocs" value="Y"/>
+                    ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="removeAttributes" value="Y"/>
+                    ${uiLabelMap.ProductFeatureAppls}&nbsp;<input type="checkbox" class="checkBox" name="removeFeatureAppls" value="Y"/>
+                    ${uiLabelMap.ProductInventoryItems}&nbsp;<input type="checkbox" class="checkBox" name="removeInventoryItems" value="Y"/>
+                </div>
+            </form>
+            <#if product?exists && product.isVirtual?if_exists == "Y">
+                <h2>${uiLabelMap.ProductUpdateProductVariants}</h2>
+                <form action="<@ofbizUrl>UpdateProductVariants?productId=${productId}</@ofbizUrl>" method="post" style="margin: 0;">
+                    <input type="hidden" name="virtualProductId" value="${productId}"/>
+                    <div>
+                        <b>${uiLabelMap.ProductUpdateProductVariants}:</b>
+                        ${uiLabelMap.ProductRemoveBefore}&nbsp;<input type="checkbox" class="checkBox" name="removeBefore" value="Y"/>
+                        ${uiLabelMap.ProductPrices}&nbsp;<input type="checkbox" class="checkBox" name="duplicatePrices" value="Y" checked="checked"/>
+                        ${uiLabelMap.CommonId}&nbsp;<input type="checkbox" class="checkBox" name="duplicateIDs" value="Y" checked="checked"/>
+                        ${uiLabelMap.ProductContent}&nbsp;<input type="checkbox" class="checkBox" name="duplicateContent" value="Y" checked="checked"/>
+                        ${uiLabelMap.ProductCategoryMembers}&nbsp;<input type="checkbox" class="checkBox" name="duplicateCategoryMembers" value="Y" checked="checked"/>
+                        ${uiLabelMap.ProductAttributes}&nbsp;<input type="checkbox" class="checkBox" name="duplicateAttributes" value="Y" checked="checked"/>
+                        ${uiLabelMap.ProductFacilities}&nbsp;<input type="checkbox" class="checkBox" name="duplicateFacilities" value="Y" checked="checked"/>
+                        ${uiLabelMap.ProductLocations}&nbsp;<input type="checkbox" class="checkBox" name="duplicateLocations" value="Y" checked="checked"/>
+                    </div>
+                    <input type="submit" class="smallSubmit" value="${uiLabelMap.CommonGo}"/>
+                </form>
+            </#if>
+            <br/>
+        </div>
+    </div>
+</#if>
\ No newline at end of file

Modified: ofbiz/trunk/applications/product/webapp/catalog/product/EditProductFeatures.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/webapp/catalog/product/EditProductFeatures.ftl?rev=607072&r1=607071&r2=607072&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/webapp/catalog/product/EditProductFeatures.ftl (original)
+++ ofbiz/trunk/applications/product/webapp/catalog/product/EditProductFeatures.ftl Thu Dec 27 05:50:05 2007
@@ -16,49 +16,48 @@
 specific language governing permissions and limitations
 under the License.
 -->
-    <#if productId?exists>    
-        <table border="1" cellpadding="2" cellspacing="0">
+<#if productId?exists>    
+    <table cellspacing="0" class="basic-table">
         <form method="post" action="<@ofbizUrl>UpdateFeatureToProductApplication</@ofbizUrl>" name="selectAllForm">
         <input type="hidden" name="_useRowSubmit" value="Y">
         <input type="hidden" name="_checkGlobalScope" value="Y">
         <input type="hidden" name="productId" value="${productId}">
-        <tr>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonId}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonDescription}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductType}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductCategory}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonFromDate}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.ProductThruDateAmountSequenceApplicationType}</b></div></td>
-            <td><div class="tabletext"><b>${uiLabelMap.CommonAll}<input type="checkbox" name="selectAll" value="${uiLabelMap.CommonY}" onclick="javascript:toggleAll(this, 'selectAllForm');"></div></td>
-           <!--<td><div class="tabletext">&nbsp;</div></td>-->
+        <tr class="header-row">
+            <td><b>${uiLabelMap.CommonId}</b></td>
+            <td><b>${uiLabelMap.CommonDescription}</b></td>
+            <td><b>${uiLabelMap.ProductType}</b></td>
+            <td><b>${uiLabelMap.ProductCategory}</b></td>
+            <td><b>${uiLabelMap.CommonFromDate}</b></td>
+            <td><b>${uiLabelMap.ProductThruDateAmountSequenceApplicationType}</b></td>
+            <td><b>${uiLabelMap.CommonAll}<input type="checkbox" name="selectAll" value="${uiLabelMap.CommonY}" onclick="javascript:toggleAll(this, 'selectAllForm');"></td>
         </tr>
         <#assign rowCount = 0>
+        <#assign rowClass = "2">
         <#list productFeatureAndAppls as productFeatureAndAppl>
             <#assign curProductFeatureType = productFeatureAndAppl.getRelatedOneCache("ProductFeatureType")>
             <#assign curProductFeatureApplType = productFeatureAndAppl.getRelatedOneCache("ProductFeatureApplType")>
             <#assign curProductFeatureCategory = (productFeatureAndAppl.getRelatedOneCache("ProductFeatureCategory")?if_exists)>
-<!--            <#if curProductFeatureCategory?exists> pageContext.setAttribute("curProductFeatureCategory", curProductFeatureCategory)</#if> -->
-            <tr valign="middle">
+            <tr valign="middle"<#if rowClass == "1"> class="alternate-row"</#if>>
                 <input type="hidden" name="productId_o_${rowCount}" value="${(productFeatureAndAppl.productId)?if_exists}">
                 <input type="hidden" name="productFeatureId_o_${rowCount}" value="${(productFeatureAndAppl.productFeatureId)?if_exists}">
                 <input type="hidden" name="fromDate_o_${rowCount}" value="${(productFeatureAndAppl.fromDate)?if_exists}">
-                <td><div class="tabletext">${(productFeatureAndAppl.productFeatureId)?if_exists}</div></td>
-                <td><div class="tabletext">${(productFeatureAndAppl.get("description",locale))?if_exists}</div></td>
-                <td><div class="tabletext">${(curProductFeatureType.get("description",locale))?default((productFeatureAndAppl.productFeatureTypeId)?if_exists)}</div></td>
+                <td>${(productFeatureAndAppl.productFeatureId)?if_exists}</td>
+                <td>${(productFeatureAndAppl.get("description",locale))?if_exists}</td>
+                <td>${(curProductFeatureType.get("description",locale))?default((productFeatureAndAppl.productFeatureTypeId)?if_exists)}</td>
                 <td><a href="<@ofbizUrl>EditFeatureCategoryFeatures?productFeatureCategoryId=${(productFeatureAndAppl.productFeatureCategoryId)?if_exists}&productId=${(productFeatureAndAppl.productId)?if_exists}</@ofbizUrl>" class="buttontext">
                     ${(curProductFeatureCategory.description)?if_exists}
                     [${(productFeatureAndAppl.productFeatureCategoryId)?if_exists}]</a></td>
                 <#assign hasntStarted = false>
                 <#if (productFeatureAndAppl.getTimestamp("fromDate"))?exists && Static["org.ofbiz.base.util.UtilDateTime"].nowTimestamp().before(productFeatureAndAppl.getTimestamp("fromDate"))> <#assign hasntStarted = true></#if>
-                <td><div class='tabletext'<#if hasntStarted> style='color: red;'</#if>>${(productFeatureAndAppl.fromDate)?if_exists}</div></td>
+                <td <#if hasntStarted> style='color: red;'</#if>>${(productFeatureAndAppl.fromDate)?if_exists}</td>
                 <td>
                     <#assign hasExpired = false>
                     <#if (productFeatureAndAppl.getTimestamp("thruDate"))?exists && Static["org.ofbiz.base.util.UtilDateTime"].nowTimestamp().after(productFeatureAndAppl.getTimestamp("thruDate"))> <#assign hasExpired = true></#if>
-                    <input type='text' size='25' name='thruDate_o_${rowCount}' value='${(productFeatureAndAppl.thruDate)?if_exists}' class='inputBox' <#if hasExpired> style='color: red;'</#if>>
+                    <input type='text' size='25' name='thruDate_o_${rowCount}' value='${(productFeatureAndAppl.thruDate)?if_exists}' <#if hasExpired> style='color: red;'</#if>>
                     <a href="javascript:call_cal(document.selectAllForm.thruDate_o_${rowCount}, '${(productFeatureAndAppl.thruDate)?default(nowTimestamp?string)}');"><img src='/images/cal.gif' width='16' height='16' border='0' alt='Calendar'></a>
-                    <input type="text" size='6' name='amount_o_${rowCount}' value='${(productFeatureAndAppl.amount)?if_exists}'  class='inputBox'>
-                    <input type="text" size='5' name='sequenceNum_o_${rowCount}' value='${(productFeatureAndAppl.sequenceNum)?if_exists}' class='inputBox'>
-                <select class='selectBox' name='productFeatureApplTypeId_o_${rowCount}' size="1">
+                    <input type="text" size='6' name='amount_o_${rowCount}' value='${(productFeatureAndAppl.amount)?if_exists}'>
+                    <input type="text" size='5' name='sequenceNum_o_${rowCount}' value='${(productFeatureAndAppl.sequenceNum)?if_exists}'>
+                    <select name='productFeatureApplTypeId_o_${rowCount}' size="1">
                     <#if (productFeatureAndAppl.productFeatureApplTypeId)?exists>
                         <option value='${(productFeatureAndAppl.productFeatureApplTypeId)?if_exists}'><#if curProductFeatureApplType?exists> ${(curProductFeatureApplType.get("description",locale))?if_exists} <#else> [${productFeatureAndAppl.productFeatureApplTypeId}]</#if></option>
                         <option value='${productFeatureAndAppl.productFeatureApplTypeId}'> </option>
@@ -66,42 +65,47 @@
                     <#list productFeatureApplTypes as productFeatureApplType>
                         <option value='${(productFeatureApplType.productFeatureApplTypeId)?if_exists}'>${(productFeatureApplType.get("description",locale))?if_exists} </option>
                     </#list>
-                </select>
+                    </select>
                 </td>
                 <td align="right">              
                     <input type="checkbox" name="_rowSubmit_o_${rowCount}" value="Y" onclick="javascript:checkToggle(this, 'selectAllForm');">
                 </td>
                 <td>
-                <a href='<@ofbizUrl>RemoveFeatureFromProduct?productId=${(productFeatureAndAppl.productId)?if_exists}&productFeatureId=${(productFeatureAndAppl.productFeatureId)?if_exists}&fromDate=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(productFeatureAndAppl.getTimestamp("fromDate").toString())}</@ofbizUrl>' class="buttontext">
-                 [${uiLabelMap.CommonDelete}]</a>
+                    <a href='<@ofbizUrl>RemoveFeatureFromProduct?productId=${(productFeatureAndAppl.productId)?if_exists}&productFeatureId=${(productFeatureAndAppl.productFeatureId)?if_exists}&fromDate=${Static["org.ofbiz.base.util.UtilFormatOut"].encodeQueryValue(productFeatureAndAppl.getTimestamp("fromDate").toString())}</@ofbizUrl>' class="buttontext">
+                    ${uiLabelMap.CommonDelete}</a>
                 </td>
             </tr>
             <#assign rowCount = rowCount + 1>
+            <#-- toggle the row color -->
+            <#if rowClass == "2">
+                <#assign rowClass = "1">
+            <#else>
+                <#assign rowClass = "2">
+            </#if>
         </#list>
         <input type="hidden" name="_rowCount" value="${rowCount}">
-        <tr><td colspan="8" align="center"><input type="submit" value='${uiLabelMap.CommonUpdate}' style='font-size: x-small;'/></td></tr>
+        <tr><td colspan="8" align="center"><input type="submit" value='${uiLabelMap.CommonUpdate}'/></td></tr>
         </form>
-        </table>
-
-        <br/>
-        <form method="post" action="<@ofbizUrl>ApplyFeaturesFromCategory</@ofbizUrl>" style='margin: 0;'>
+    </table>
+    <br/>
+    <form method="post" action="<@ofbizUrl>ApplyFeaturesFromCategory</@ofbizUrl>" style='margin: 0;'>
         <input type="hidden" name="productId" value="${productId}">
         <h2>${uiLabelMap.ProductAddProductFeatureFromCategory}:</h2>
         <br/>
-        <select class='selectBox' name='productFeatureCategoryId' size="1">
+        <select name='productFeatureCategoryId' size="1">
             <option value='' selected>${uiLabelMap.ProductChooseFeatureCategory}</option>
             <#list productFeatureCategories as productFeatureCategory>
                 <option value='${(productFeatureCategory.productFeatureCategoryId)?if_exists}'>${(productFeatureCategory.description)?if_exists} [${(productFeatureCategory.productFeatureCategoryId)?if_exists}]</option>
             </#list>
         </select>
-        <select class='selectBox' name='productFeatureGroupId' size="1">
+        <select name='productFeatureGroupId' size="1">
             <option value='' selected>${uiLabelMap.ProductChooseFeatureGroup}</option>
             <#list productFeatureGroups as productFeatureGroup>
                 <option value='${(productFeatureGroup.productFeatureGroupId)?if_exists}'>${(productFeatureGroup.description)?if_exists} [${(productFeatureGroup.productFeatureGroupId)?if_exists}]</option>
             </#list>
         </select>
-        <span class='tabletext'>${uiLabelMap.ProductFeatureApplicationType}: </span>
-        <select class='selectBox' name='productFeatureApplTypeId' size="1">
+        <span class='label'>${uiLabelMap.ProductFeatureApplicationType}: </span>
+        <select name='productFeatureApplTypeId' size="1">
             <#list productFeatureApplTypes as productFeatureApplType>
                <option value='${(productFeatureApplType.productFeatureApplTypeId)?if_exists}'
                <#if (productFeatureApplType.productFeatureApplTypeId?exists && product?exists && product.isVirtual == 'Y' && productFeatureApplType.productFeatureApplTypeId =="SELECTABLE_FEATURE")>selected</#if>
@@ -109,24 +113,22 @@
                >${(productFeatureApplType.get("description",locale))?if_exists} </option>          
             </#list>
         </select>
-        <input type="submit" value='${uiLabelMap.CommonAdd}' style='font-size: x-small;'>
-        </form>
-
-        <br/>
-
-        <form method="post" action="<@ofbizUrl>ApplyFeatureToProductFromTypeAndCode</@ofbizUrl>" style='margin: 0;' name='addFeatureByTypeIdCode'>
+        <input type="submit" value='${uiLabelMap.CommonAdd}'>
+    </form>
+    <br/>
+    <form method="post" action="<@ofbizUrl>ApplyFeatureToProductFromTypeAndCode</@ofbizUrl>" name='addFeatureByTypeIdCode'>
         <input type="hidden" name="productId" value="${productId}">
         <h2>${uiLabelMap.ProductAddProductFeatureTypeId}:</h2>
         <br/>
-        <span class='tabletext'>${uiLabelMap.ProductFeatureType}: </span><select class='selectBox' name='productFeatureTypeId' size="1">
+        <span class='label'>${uiLabelMap.ProductFeatureType}: </span><select name='productFeatureTypeId' size="1">
             <#list productFeatureTypes as productFeatureType>
             <option value='${(productFeatureType.productFeatureTypeId)?if_exists}'>${(productFeatureType.get("description",locale))?if_exists} </option>
             </#list>
         </select>
-        <span class='tabletext'>${uiLabelMap.CommonIdCode}: </span><input type="text" size='10' name='idCode' value='' class='inputBox'>
+        <span class='label'>${uiLabelMap.CommonIdCode}: </span><input type="text" size='10' name='idCode' value=''>
         <br/>
-        <span class='tabletext'>${uiLabelMap.ProductFeatureApplicationType}: </span>
-        <select class='selectBox' name='productFeatureApplTypeId' size="1">
+        <span class='label'>${uiLabelMap.ProductFeatureApplicationType}: </span>
+        <select name='productFeatureApplTypeId' size="1">
             <#list productFeatureApplTypes as productFeatureApplType>
                <option value='${(productFeatureApplType.productFeatureApplTypeId)?if_exists}'
                <#if (productFeatureApplType.productFeatureApplTypeId?exists && product?exists && product.isVirtual == 'Y' && productFeatureApplType.productFeatureApplTypeId =="SELECTABLE_FEATURE")>selected</#if>
@@ -135,29 +137,27 @@
             </#list>
         </select>
         <br/>
-        <span class='tabletext'>${uiLabelMap.CommonFrom} : </span><input type="text" size='25' name='fromDate' class='inputBox'>
+        <span class='label'>${uiLabelMap.CommonFrom} : </span><input type="text" size='25' name='fromDate'>
         <a href="javascript:call_cal(document.addFeatureByTypeIdCode.fromDate, '${nowTimestamp?string}');"><img src='/images/cal.gif' width='16' height='16' border='0' alt='Calendar'></a>
-        <span class='tabletext'>${uiLabelMap.CommonThru} : </span><input type="text" size='25' name='thruDate' class='inputBox'>
+        <span class='label'>${uiLabelMap.CommonThru} : </span><input type="text" size='25' name='thruDate'>
         <a href="javascript:call_cal(document.addFeatureByTypeIdCode.thruDate, '${nowTimestamp?string}');"><img src='/images/cal.gif' width='16' height='16' border='0' alt='Calendar'></a>
-        <span class='tabletext'>${uiLabelMap.CommonSequence} : </span><input type="text" size='5' name='sequenceNum' class='inputBox'>
-        <input type="submit" value="${uiLabelMap.CommonAdd}" style='font-size: x-small;'>
-        </form>
-
-        <br/>
-
-        <form method="post" action="<@ofbizUrl>ApplyFeatureToProduct</@ofbizUrl>" style="margin: 0;" name="addFeatureById">
+        <span class='label'>${uiLabelMap.CommonSequence} : </span><input type="text" size='5' name='sequenceNum'>
+        <input type="submit" value="${uiLabelMap.CommonAdd}">
+    </form>
+    <br/>
+    <form method="post" action="<@ofbizUrl>ApplyFeatureToProduct</@ofbizUrl>" name="addFeatureById">
         <input type="hidden" name="productId" value="${productId}">
         <h2>${uiLabelMap.ProductAddProductFeatureID}:</h2>
         <br/>
-        <span class="tabletext">${uiLabelMap.CommonId}: </span>
-        <input type="text" size="10" name="productFeatureId" value="" class="inputBox">
-        <span class='tabletext'>
+        <span class="label">${uiLabelMap.CommonId}: </span>
+        <input type="text" size="10" name="productFeatureId" value="">
+        <span class='label'>
             <a href="javascript:call_fieldlookup2(document.addFeatureById.productFeatureId,'LookupProductFeature');">
                 <img src='/images/fieldlookup.gif' width='15' height='14' border='0' alt='Click here For Field Lookup'>
             </a>
         </span>
-        <span class="tabletext">${uiLabelMap.ProductFeatureApplicationType}: </span>
-        <select class="selectBox" name="productFeatureApplTypeId" size="1">
+        <span class="label">${uiLabelMap.ProductFeatureApplicationType}: </span>
+        <select name="productFeatureApplTypeId" size="1">
             <#list productFeatureApplTypes as productFeatureApplType>
                <option value='${(productFeatureApplType.productFeatureApplTypeId)?if_exists}'
                <#if (productFeatureApplType.productFeatureApplTypeId?exists && product?exists && product.isVirtual == 'Y' && productFeatureApplType.productFeatureApplTypeId =="SELECTABLE_FEATURE")>selected</#if>
@@ -166,12 +166,12 @@
             </#list>
         </select>
         <br/>
-        <span class="tabletext">${uiLabelMap.CommonFrom} : </span><input type="text" size="25" name="fromDate" class="inputBox">
+        <span class="label">${uiLabelMap.CommonFrom} : </span><input type="text" size="25" name="fromDate">
         <a href="javascript:call_cal(document.addFeatureById.fromDate, '${nowTimestamp?string}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
-        <span class="tabletext">${uiLabelMap.CommonThru} : </span><input type="text" size="25" name="thruDate" class="inputBox">
+        <span class="label">${uiLabelMap.CommonThru} : </span><input type="text" size="25" name="thruDate">
         <a href="javascript:call_cal(document.addFeatureById.thruDate, '${nowTimestamp?string}');"><img src="<@ofbizContentUrl>/images/cal.gif</@ofbizContentUrl>" width="16" height="16" border="0" alt="Calendar"></a>
-        <span class="tabletext">${uiLabelMap.CommonSequence} : </span><input type="text" size="5" name="sequenceNum" class="inputBox">
-        <input type="submit" value="${uiLabelMap.CommonAdd}" style="font-size: x-small;">
-        </form>
-    </#if>
-    <br/>
+        <span class="label">${uiLabelMap.CommonSequence} : </span><input type="text" size="5" name="sequenceNum">
+        <input type="submit" value="${uiLabelMap.CommonAdd}">
+    </form>
+</#if>
+<br/>
\ No newline at end of file