You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jl...@apache.org on 2013/06/15 15:45:27 UTC

svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

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);
             }



Re: svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

Posted by Jacques Le Roux <ja...@les7arts.com>.
Done in trunk

Jacques

From: "Jacques Le Roux" <ja...@les7arts.com>
> Agreed, I spotted it, thought about removing it, then forgot and after the backport it was a bit heavy
> 
> Jacques
> 
> From: "Scott Gray" <sc...@hotwaxmedia.com>
>> 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, jleroux@apache.org 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);
>>>             }
>>> 
>>> 
>> 
>>
>

Re: svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

Posted by Jacques Le Roux <ja...@les7arts.com>.
Agreed, I spotted it, thought about removing it, then forgot and after the backport it was a bit heavy

Jacques

From: "Scott Gray" <sc...@hotwaxmedia.com>
> 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, jleroux@apache.org 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);
>>             }
>> 
>> 
> 
>

Re: svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

Posted by Scott Gray <sc...@hotwaxmedia.com>.
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, jleroux@apache.org 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);
>             }
> 
> 


Re: svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

Posted by Jacques Le Roux <ja...@les7arts.com>.
Anyway it was about removing elements in a foreach loop without an iterator, so Olivier's fix is always good. As he said "I don't know how it worked before"

Jacques

From: "Adrian Crum" <ad...@sandglass-software.com>
> The "change from FastList to standard java List " exists only in the trunk.
> 
> -Adrian
> 
> On 6/15/2013 2:45 PM, jleroux@apache.org 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);
>>               }
>>
>>
>

Re: svn commit: r1493353 - in /ofbiz/branches/release12.04: ./ framework/common/script/org/ofbiz/common/PortalPageServices.xml framework/widget/src/org/ofbiz/widget/PortalPageWorker.java

Posted by Adrian Crum <ad...@sandglass-software.com>.
The "change from FastList to standard java List " exists only in the trunk.

-Adrian

On 6/15/2013 2:45 PM, jleroux@apache.org 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);
>               }
>
>