Please don't comment out code without a comment describing why, either explain 
it in a comment or delete it altogether.

Thanks
Scott

On 16/06/2013, at 1:45 AM, [email protected] wrote:

> Author: jleroux
> Date: Sat Jun 15 13:45:26 2013
> New Revision: 1493353
> 
> URL: http://svn.apache.org/r1493353
> Log:
> "Applied fix from trunk for revision: 1493352" 
> ------------------------------------------------------------------------
> r1493352 | jleroux | 2013-06-15 15:40:42 +0200 (sam., 15 juin 2013) | 40 lines
> 
> A patch from Olivier Heintz for "Portal page personalization is not working" 
> https://issues.apache.org/jira/browse/OFBIZ-5189
> 
> Two simples errors after last change from FastList to standard java List :
> 1) go to example component / Dasboard 
> 1.1) click on edit for one page
> Screen is blocked
> reason : 
> {code}
>                    for (GenericValue portalPage : portalPages) {
>                        cond = EntityCondition.makeCondition(UtilMisc.toList(
>                                
> EntityCondition.makeCondition("ownerUserLoginId", EntityOperator.EQUALS, 
> userLoginId),
>                                
> EntityCondition.makeCondition("originalPortalPageId", EntityOperator.EQUALS, 
> portalPage.getString("portalPageId"))),
>                                EntityOperator.AND);
>                        List <GenericValue> privatePortalPages = 
> delegator.findList("PortalPage", cond, null, null, null, false);
>                        if (UtilValidate.isNotEmpty(privatePortalPages)) {
>                            portalPages.remove(portalPage);
>                            portalPages.add(privatePortalPages.get(0));
>                        }
>                    }
> {code}
> code iterate on a list and modify it, I don't know how it could work before 
> ;-)
> I propose to use an other list on iterate 
> 
> 2) on appbarclose.ftl for tomawak theme there is
> {code}
>    <#assign portalPage = delegator.findOne("PortalPage", findMap, true)>
> {code}
> when you click to "revert to original" in dasboard screen
> {code}
> Error on line 45, column 5 in component://tomahawk/includes/appbarClose.ftl 
> delegator.findOne("PortalPage", findMap, true) is undefined. It cannot be 
> assigned to portalPage The problematic instruction: ---------- ==> 
> assignment: portalPage=delegator.findOne("PortalPage", findMap, true) [on 
> line 45, column 5 in component://tomahawk/includes/appbarClose.ftl] -
> {code}
> 2.1) to see the error, modify ExampleMenus.xml and change menu-item name from 
> "Dasboard" to "Dasboard1" 
> 2.2) go to example / dashboard and edit one page
> 2.3) click to "revert to original"
> I propose to add ?if_exists 
> 
> One other bug in portal page personalization.
> When trying to delete portlet or column in portal page, there is an error 
> because in delete service, cache is used to read data before remove.
> 
> Correction proposed is to remove use-cache="true"
> ------------------------------------------------------------------------
> 
> 
> Modified:
>    ofbiz/branches/release12.04/   (props changed)
>    
> ofbiz/branches/release12.04/framework/common/script/org/ofbiz/common/PortalPageServices.xml
>    
> ofbiz/branches/release12.04/framework/widget/src/org/ofbiz/widget/PortalPageWorker.java
> 
> Propchange: ofbiz/branches/release12.04/
> ------------------------------------------------------------------------------
>  Merged /ofbiz/trunk:r1493352
> 
> Modified: 
> ofbiz/branches/release12.04/framework/common/script/org/ofbiz/common/PortalPageServices.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/branches/release12.04/framework/common/script/org/ofbiz/common/PortalPageServices.xml?rev=1493353&r1=1493352&r2=1493353&view=diff
> ==============================================================================
> --- 
> ofbiz/branches/release12.04/framework/common/script/org/ofbiz/common/PortalPageServices.xml
>  (original)
> +++ 
> ofbiz/branches/release12.04/framework/common/script/org/ofbiz/common/PortalPageServices.xml
>  Sat Jun 15 13:45:26 2013
> @@ -50,7 +50,7 @@ under the License.
> 
>     <simple-method method-name="deletePortalPageColumn" 
> short-description="Delete a Column from a PortalPage">
>         <call-simple-method method-name="checkOwnerShip"/>
> -        <entity-one entity-name="PortalPageColumn" value-field="column" 
> auto-field-map="true" use-cache="true"/>
> +        <entity-one entity-name="PortalPageColumn" value-field="column" 
> auto-field-map="true"/>
>         <if-not-empty field="column">
>             <entity-and entity-name="PortalPagePortlet" 
> list="portalPortletList">
>                 <field-map field-name="portalPageId" 
> from-field="column.portalPageId"/>
> @@ -97,7 +97,7 @@ under the License.
> 
>     <simple-method method-name="deletePortalPagePortlet" 
> short-description="Delete a PortalPortlet from a PortalPageColumn">
>         <call-simple-method method-name="checkOwnerShip"/>
> -        <entity-one entity-name="PortalPagePortlet" value-field="portlet" 
> auto-field-map="true" use-cache="true"/>
> +        <entity-one entity-name="PortalPagePortlet" value-field="portlet" 
> auto-field-map="true"/>
>         <if-not-empty field="portlet">
>             <make-value value-field="newEntity" 
> entity-name="PortletAttribute"/>
>             <set field="newEntity.portalPageId" 
> from-field="portlet.portalPageId"/>
> 
> Modified: 
> ofbiz/branches/release12.04/framework/widget/src/org/ofbiz/widget/PortalPageWorker.java
> URL: 
> http://svn.apache.org/viewvc/ofbiz/branches/release12.04/framework/widget/src/org/ofbiz/widget/PortalPageWorker.java?rev=1493353&r1=1493352&r2=1493353&view=diff
> ==============================================================================
> --- 
> ofbiz/branches/release12.04/framework/widget/src/org/ofbiz/widget/PortalPageWorker.java
>  (original)
> +++ 
> ofbiz/branches/release12.04/framework/widget/src/org/ofbiz/widget/PortalPageWorker.java
>  Sat Jun 15 13:45:26 2013
> @@ -19,6 +19,7 @@
> package org.ofbiz.widget;
> 
> import java.io.IOException;
> +import java.util.ArrayList;
> import java.util.List;
> import java.util.Map;
> import org.ofbiz.base.util.Debug;
> @@ -66,6 +67,7 @@ public class PortalPageWorker {
>                                 EntityOperator.OR)),
>                         EntityOperator.AND);
>                 portalPages = delegator.findList("PortalPage", cond, null, 
> null, null, false);
> +                List<GenericValue> userPortalPages = new 
> ArrayList<GenericValue>();
>                 if (UtilValidate.isNotEmpty(context.get("userLogin"))) { // 
> check if a user is logged in
>                     String userLoginId = 
> ((GenericValue)context.get("userLogin")).getString("userLoginId");
>                     // replace with private pages
> @@ -76,8 +78,10 @@ public class PortalPageWorker {
>                                 EntityOperator.AND);
>                         List <GenericValue> privatePortalPages = 
> delegator.findList("PortalPage", cond, null, null, null, false);
>                         if (UtilValidate.isNotEmpty(privatePortalPages)) {
> -                            portalPages.remove(portalPage);
> -                            portalPages.add(privatePortalPages.get(0));
> +                            //portalPages.remove(portalPage);
> +                            userPortalPages.add(privatePortalPages.get(0));
> +                        } else {
> +                            userPortalPages.add(portalPage);
>                         }
>                     }
>                     // add any other created private pages
> @@ -86,9 +90,9 @@ public class PortalPageWorker {
>                             
> EntityCondition.makeCondition("originalPortalPageId", EntityOperator.EQUALS, 
> null),
>                             
> EntityCondition.makeCondition("parentPortalPageId", EntityOperator.EQUALS, 
> parentPortalPageId)),
>                             EntityOperator.AND);
> -                    portalPages.addAll(delegator.findList("PortalPage", 
> cond, null, null, null, false));
> +                    userPortalPages.addAll(delegator.findList("PortalPage", 
> cond, null, null, null, false));
>                 }
> -                portalPages = EntityUtil.orderBy(portalPages, 
> UtilMisc.toList("sequenceNum"));
> +                portalPages = EntityUtil.orderBy(userPortalPages, 
> UtilMisc.toList("sequenceNum"));
>             } catch (GenericEntityException e) {
>                 Debug.logError("Could not retrieve portalpages:" + 
> e.getMessage(), module);
>             }
> 
> 

Reply via email to