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/03/28 09:19:32 UTC

svn commit: r523206 - in /ofbiz/trunk/applications: ecommerce/widget/CatalogScreens.xml product/src/org/ofbiz/product/product/ProductSearchSession.java

Author: jonesde
Date: Wed Mar 28 00:19:31 2007
New Revision: 523206

URL: http://svn.apache.org/viewvc?view=rev&rev=523206
Log:
Some refactoring in ProductSearchSession so that you can override or set a default VIEW_SIZE or even VIEW_INDEX in a screen definition, plus an example of the default setting

Modified:
    ofbiz/trunk/applications/ecommerce/widget/CatalogScreens.xml
    ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java

Modified: ofbiz/trunk/applications/ecommerce/widget/CatalogScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/widget/CatalogScreens.xml?view=diff&rev=523206&r1=523205&r2=523206
==============================================================================
--- ofbiz/trunk/applications/ecommerce/widget/CatalogScreens.xml (original)
+++ ofbiz/trunk/applications/ecommerce/widget/CatalogScreens.xml Wed Mar 28 00:19:31 2007
@@ -388,6 +388,7 @@
                 <set field="productsummaryScreen" value="component://ecommerce/widget/CatalogScreens.xml#productsummary"/>
 
                 <set field="titleProperty" value="PageTitleSearchResults"/>
+                <set field="parameters.VIEW_SIZE" from-field="parameters.VIEW_SIZE" default-value="10"/>
                 <script location="component://order/webapp/ordermgr/WEB-INF/actions/entry/catalog/keywordsearch.bsh"/>
             </actions>
             <widgets>

Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java?view=diff&rev=523206&r1=523205&r2=523206
==============================================================================
--- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java (original)
+++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java Wed Mar 28 00:19:31 2007
@@ -142,6 +142,23 @@
             this.viewIndex = viewIndex;
         }
         /**
+         * @param viewIndex The viewIndex to set.
+         */
+        public void setViewIndex(String viewIndexStr) {
+            if (UtilValidate.isEmpty(viewIndexStr)) {
+                return;
+            }
+            try {
+                this.setViewIndex(Integer.valueOf(viewIndexStr));
+            } catch (Exception e) {
+                Debug.logError(e, "Error in formatting of VIEW_INDEX [" + viewIndexStr + "], setting to 20", module);
+                if (this.viewIndex == null) {
+                    this.setViewIndex(new Integer(20));
+                }
+            }
+        }
+
+        /**
          * @return Returns the viewSize.
          */
         public Integer getViewSize() {
@@ -153,6 +170,22 @@
         public void setViewSize(Integer viewSize) {
             this.viewSize = viewSize;
         }
+        /**
+         * @param viewSize The viewSize to set.
+         */
+        public void setViewSize(String viewSizeStr) {
+            if (UtilValidate.isEmpty(viewSizeStr)) {
+                return;
+            }
+            try {
+                this.setViewSize(Integer.valueOf(viewSizeStr));
+            } catch (Exception e) {
+                Debug.logError(e, "Error in formatting of VIEW_SIZE [" + viewSizeStr + "], setting to 20", module);
+                if (this.viewSize == null) {
+                    this.setViewSize(new Integer(20));
+                }
+            }
+        }
 
         public List searchGetConstraintStrings(boolean detailed, GenericDelegator delegator, Locale locale) {
             List productSearchConstraintList = this.getConstraintList();
@@ -395,6 +428,11 @@
         GenericDelegator delegator = (GenericDelegator) request.getAttribute("delegator");
         Boolean alreadyRun = (Boolean) request.getAttribute("processSearchParametersAlreadyRun"); 
         if (Boolean.TRUE.equals(alreadyRun)) {
+            // even if already run, check the VIEW_SIZE and VIEW_INDEX again, just for kicks
+            ProductSearchOptions productSearchOptions = getProductSearchOptions(request.getSession());
+            productSearchOptions.setViewIndex((String) parameters.get("VIEW_INDEX"));
+            productSearchOptions.setViewSize((String) parameters.get("VIEW_SIZE"));
+            
             return;
         } else {
             request.setAttribute("processSearchParametersAlreadyRun", Boolean.TRUE);
@@ -589,26 +627,8 @@
             productSearchOptions.clearViewInfo();
         }
 
-        String viewIndexStr = (String) parameters.get("VIEW_INDEX");
-        if (UtilValidate.isNotEmpty(viewIndexStr)) {
-            try {
-                productSearchOptions.setViewIndex(Integer.valueOf(viewIndexStr));
-            } catch (Exception e) {
-                Debug.logError(e, "Error formatting VIEW_INDEX, setting to 0", module);
-                // we could just do nothing here, but we know something was specified so we don't want to use the previous value from the session
-                productSearchOptions.setViewIndex(new Integer(0));
-            }
-        }
-
-        String viewSizeStr = (String) parameters.get("VIEW_SIZE");
-        if (UtilValidate.isNotEmpty(viewSizeStr)) {
-            try {
-                productSearchOptions.setViewSize(Integer.valueOf(viewSizeStr));
-            } catch (Exception e) {
-                Debug.logError(e, "Error formatting VIEW_SIZE, setting to 20", module);
-                productSearchOptions.setViewSize(new Integer(20));
-            }
-        }
+        productSearchOptions.setViewIndex((String) parameters.get("VIEW_INDEX"));
+        productSearchOptions.setViewSize((String) parameters.get("VIEW_SIZE"));
     }
 
     public static Map getProductSearchResult(HttpServletRequest request, GenericDelegator delegator, String prodCatalogId) {