Author: deepak
Date: Sat May 16 10:46:26 2015
New Revision: 1679721

URL: http://svn.apache.org/r1679721
Log:
Applied fix from trunk r#1679720
============================================================
Applied patch from jira issue OFBIZ-6262 -CategoryContentWrapper ignores 
session locale

Thanks Josip Almasi for issue reporting and providing the patch.

Modified:
    ofbiz/branches/release14.12/   (props changed)
    
ofbiz/branches/release14.12/applications/product/src/org/ofbiz/product/category/CategoryContentWrapper.java

Propchange: ofbiz/branches/release14.12/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat May 16 10:46:26 2015
@@ -8,4 +8,4 @@
 /ofbiz/branches/json-integration-refactoring:1634077-1635900
 /ofbiz/branches/multitenant20100310:921280-927264
 /ofbiz/branches/release13.07:1547657
-/ofbiz/trunk:1649072,1649083-1649084,1649086,1649090,1649096,1649230,1649238-1649239,1649248,1649272,1649275,1649280-1649281,1649283,1649285-1649286,1649291,1649329,1649331,1649384,1649393,1649666,1649742,1650240,1650348,1650357,1650583,1650642,1650678,1650821,1650882,1650887,1650938,1651593,1652312,1652361,1652638,1652641,1652672,1652688,1652706,1652725,1652731,1652739,1652852,1653248,1653296,1653456,1653597,1653614,1654175,1654273,1654509,1654670,1654672-1654673,1654683-1654684,1654824,1655046,1655668,1655979,1656014,1656185,1656198,1656445,1656983,1657323,1657506-1657507,1657514,1657714,1657790,1657848,1658364,1658662,1658882,1659224,1659965,1660031,1660053,1660389,1660444,1660579,1661303,1661328,1661760,1661778,1661853,1661862,1661873,1661940,1661951,1661977,1662119-1662120,1662361,1662500,1662812,1662919,1663202,1663912,1663979,1664602,1664604,1664696,1665154,1665162,1665535,1666404,1666511,1666633,1666836,1666939,1666949,1666958,1667055,1667253,1667483,1667492,1667774,1668207,
 
1668214,1668236,1668246,1668258,1668263,1668265,1668270,1668277,1668314,1668657,1669317,1669588,1672427,1672430,1672846,1672853,1672856,1672862,1672873,1673764,1674447,1674464,1674491,1674496,1674908,1676674,1677123,1677597,1677769-1677770,1678294,1678882,1678911,1679689,1679697,1679702,1679709
+/ofbiz/trunk:1649072,1649083-1649084,1649086,1649090,1649096,1649230,1649238-1649239,1649248,1649272,1649275,1649280-1649281,1649283,1649285-1649286,1649291,1649329,1649331,1649384,1649393,1649666,1649742,1650240,1650348,1650357,1650583,1650642,1650678,1650821,1650882,1650887,1650938,1651593,1652312,1652361,1652638,1652641,1652672,1652688,1652706,1652725,1652731,1652739,1652852,1653248,1653296,1653456,1653597,1653614,1654175,1654273,1654509,1654670,1654672-1654673,1654683-1654684,1654824,1655046,1655668,1655979,1656014,1656185,1656198,1656445,1656983,1657323,1657506-1657507,1657514,1657714,1657790,1657848,1658364,1658662,1658882,1659224,1659965,1660031,1660053,1660389,1660444,1660579,1661303,1661328,1661760,1661778,1661853,1661862,1661873,1661940,1661951,1661977,1662119-1662120,1662361,1662500,1662812,1662919,1663202,1663912,1663979,1664602,1664604,1664696,1665154,1665162,1665535,1666404,1666511,1666633,1666836,1666939,1666949,1666958,1667055,1667253,1667483,1667492,1667774,1668207,
 
1668214,1668236,1668246,1668258,1668263,1668265,1668270,1668277,1668314,1668657,1669317,1669588,1672427,1672430,1672846,1672853,1672856,1672862,1672873,1673764,1674447,1674464,1674491,1674496,1674908,1676674,1677123,1677597,1677769-1677770,1678294,1678882,1678911,1679689,1679697,1679702,1679709,1679720

Modified: 
ofbiz/branches/release14.12/applications/product/src/org/ofbiz/product/category/CategoryContentWrapper.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release14.12/applications/product/src/org/ofbiz/product/category/CategoryContentWrapper.java?rev=1679721&r1=1679720&r2=1679721&view=diff
==============================================================================
--- 
ofbiz/branches/release14.12/applications/product/src/org/ofbiz/product/category/CategoryContentWrapper.java
 (original)
+++ 
ofbiz/branches/release14.12/applications/product/src/org/ofbiz/product/category/CategoryContentWrapper.java
 Sat May 16 10:46:26 2015
@@ -35,6 +35,7 @@ import org.ofbiz.base.util.StringUtil;
 import org.ofbiz.base.util.UtilHttp;
 import org.ofbiz.base.util.UtilMisc;
 import org.ofbiz.base.util.UtilValidate;
+import org.ofbiz.base.util.UtilProperties;
 import org.ofbiz.base.util.GeneralRuntimeException;
 import org.ofbiz.content.content.ContentWorker;
 import org.ofbiz.content.content.ContentWrapper;
@@ -143,7 +144,23 @@ public class CategoryContentWrapper impl
 
         List<GenericValue> categoryContentList = 
EntityQuery.use(delegator).from("ProductCategoryContent").where("productCategoryId",
 productCategoryId, "prodCatContentTypeId", 
prodCatContentTypeId).orderBy("-fromDate").cache(true).queryList();
         categoryContentList = EntityUtil.filterByDate(categoryContentList);
-        GenericValue categoryContent = 
EntityUtil.getFirst(categoryContentList);
+        
+        GenericValue categoryContent = null;
+        String sessionLocale = locale.toString();
+        String fallbackLocale = UtilProperties.getFallbackLocale().toString();
+        if ( sessionLocale == null ) sessionLocale = fallbackLocale;
+        // look up all content found for locale
+        for( GenericValue currentContent: categoryContentList ) {
+            GenericValue content = 
EntityQuery.use(delegator).from("Content").where("contentId", 
currentContent.getString("contentId")).cache().queryOne();
+            if ( sessionLocale.equals(content.getString("localeString")) ) {
+              // valid locale found
+              categoryContent = currentContent;
+              break;
+            } else if ( 
fallbackLocale.equals(content.getString("localeString")) ) {
+              // fall back to default locale
+              categoryContent = currentContent;
+            }
+        }
         if (categoryContent != null) {
             // when rendering the category content, always include the Product 
Category and ProductCategoryContent records that this comes from
             Map<String, Object> inContext = FastMap.newInstance();


Reply via email to