rave-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zhenhua (Gerald) Guo" <jen...@gmail.com>
Subject Re: svn commit: r1132706 - in /incubator/rave/trunk/rave-portal/src/main/webapp: WEB-INF/views/home.jsp script/rave.js
Date Mon, 06 Jun 2011 21:08:20 GMT
I committed some code to fix the gadget deletion bug several days ago.
 I tested it and it worked.
It still does not work for you guys?

Gerald

On Mon, Jun 6, 2011 at 11:34 AM, Marlon Pierce <mpierce@cs.indiana.edu> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Sorry, computer crash.  Sure--go ahead or describe the solution and I'll do it.  Deleting
the RegionWidget from Region's list was the only way I saw to do the delete.
>
>
> Marlon
>
>
> On 6/6/11 1:55 PM, Franklin, Matthew B. wrote:
>> Ahh.  That makes sense.  I think there might be a way to simplify the
>> server side delete operation so that this wouldn't happen.  Specifically,
>> removing the need to pass the regionId and just use the regionWidgetId to
>> delete the widget.
>>
>> -Matt
>>
>> On 6/6/11 1:52 PM, "Marlon Pierce" <mpierce@cs.indiana.edu> wrote:
>>
>> Trying to delete a gadget that you have moved on the page throws this
>> error:Rave attempted to update the server with your recent changes,  but
>> the changes were rejected by the server as invalid.
>>
>> On 6/6/11 1:46 PM, Franklin, Matthew B. wrote:
>>>>>
>>>>> On 6/6/11 1:43 PM, "Marlon Pierce" <mpierce@cs.indiana.edu> wrote:
>>>>>
>>>>> I cleaned it up a bit already, but let me look at the init.  There is
>>>>> still a bug associated with deleting gadgets that have been moved.
>>>>>
>>>>>> Moved or deleted? Can you elaborate on the bug a bit?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Marlon
>>>>>
>>>>>
>>>>> On 6/6/11 1:36 PM, Franklin, Matthew B. wrote:
>>>>>>>> On 6/6/11 1:10 PM, "mpierce@apache.org" <mpierce@apache.org>
wrote:
>>>>>>>>
>>>>>>>>> Author: mpierce
>>>>>>>>> Date: Mon Jun  6 17:10:32 2011
>>>>>>>>> New Revision: 1132706
>>>>>>>>>
>>>>>>>>> URL: http://svn.apache.org/viewvc?rev=1132706&view=rev
>>>>>>>>> Log:
>>>>>>>>> Reorganizing the widget deletion code (RAVE-41) so that
most of the
>>>>>>>>> action takes place in rave.js rather than home.jsp.  Probably
this
>>>>>>>>> needs
>>>>>>>>> a better design pattern applied to it.
>>>>>>>>
>>>>>>>> Thanks for taking that on.  I haven't had a ton of time
to look over
>>>>>>>> the
>>>>>>>> delete code yet, but from what I have seen, it looks like
there
>>>>>>>> should
>>>>>>>> be
>>>>>>>> no reason that we can't do what is left in the home.jsp in
the
>>>>>>>> ui.init
>>>>>>>> function of rave.js (init the buttons for all widgets with
one
>>>>>>>> expression).  This would allow us to move the script includes
for
>>>>>>>> jquery,
>>>>>>>> etc back to the bottom of the page, which is where we really
want
>>>>>>>> them.
>>>>>>>>
>>>>>>>> I can go ahead and make this change unless Marlon or others
who have
>>>>>>>> been
>>>>>>>> working on it want to give it a go.
>>>>>>>>
>>>>>>>> -Matt
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Modified:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.j
>>>>>>>>> sp
>>>>>>>>>    incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>>>>>>>>
>>>>>>>>> Modified:
>>>>>>>>>
>>>>>>>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.j
>>>>>>>>> sp
>>>>>>>>> URL:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/mai
>>>>>>>>> n/w
>>>>>>>>> eb
>>>>>>>>>
>>>>>>>>> app/WEB-INF/views/home.jsp?rev=1132706&r1=1132705&r2=1132706&view=dif
>>>>>>>>> f
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> =====================================================================
>>>>>>>>> ===
>>>>>>>>> ==
>>>>>>>>> ====
>>>>>>>>> ---
>>>>>>>>>
>>>>>>>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.j
>>>>>>>>> sp
>>>>>>>>> (original)
>>>>>>>>> +++
>>>>>>>>>
>>>>>>>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.j
>>>>>>>>> sp
>>>>>>>>> Mon Jun  6 17:10:32 2011
>>>>>>>>> @@ -64,41 +64,35 @@
>>>>>>>>>         <div class="widget-title-bar" >
>>>>>>>>>             <span
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> id="widget-${regionWidget.id}-title">${regionWidget.widget.title}</sp
>>>>>>>>> an>
>>>>>>>>>
>>>>>>>>> -            <span id="widget-${regionWidget.id}-toolbar"
>>>>>>>>> style="float:right;">
>>>>>>>>> -              <button id="widget-${regionWidget.id}-max"
>>>>>>>>> class="widget-toolbar-btn"></button>
>>>>>>>>> -                                  
             <button id="widget-${regionWidget.id}-remove"
>>>>>>>>> class="widget-toolbar-btn"></button>
>>>>>>>>> -                                  
             <script>
>>>>>>>>> -              $("#widget-${regionWidget.id}-max").button({
>>>>>>>>> -                text: false,
>>>>>>>>> -                icons: {
>>>>>>>>> -                  primary: "ui-icon-arrow-4-diag"
>>>>>>>>> -                }
>>>>>>>>> -              }).click(function() {
>>>>>>>>> -                alert("not implemented yet.");
>>>>>>>>> -              });
>>>>>>>>> -                                  
             $("#widget-${regionWidget.id}-remove").button({
>>>>>>>>> -                                  
         text: false,
>>>>>>>>> -                                  
         icons: {
>>>>>>>>> -                                  
           primary: "ui-icon-close"
>>>>>>>>> -                                  
         }
>>>>>>>>> -                                  
       }).unbind("click").click(function() {
>>>>>>>>> -                                  
           alert("remove gadget");
>>>>>>>>> -                                  
         rave.api.rpc.removeWidget({
>>>>>>>>> -                                  
             regionWidgetId: "${regionWidget.id}",
>>>>>>>>> -                                  
             pageId: "${defaultPage.id}",
>>>>>>>>> -                                  
             region: {
>>>>>>>>> -                                  
                 id : rave.getGadgetRegion("${regionWidget.id}")
>>>>>>>>> -                                  
             },
>>>>>>>>> -                                  
             succCB: function() {
>>>>>>>>> -                                  
                     $("#widget-wrapper-${regionWidget.id}").remove();
>>>>>>>>> -                                  
             }
>>>>>>>>> -                                  
           });
>>>>>>>>> -                                  
       });
>>>>>>>>> -                                  
             rave.mapGadgetToRegion("${regionWidget.id}",
>>>>>>>>> "${region.id}");
>>>>>>>>> -                                  
             </script>
>>>>>>>>> -                                  
           </span>
>>>>>>>>> -
>>>>>>>>> -        </div>
>>>>>>>>> +                              <!--
These are toolbar buttons -->
>>>>>>>>> +                              <span
id="widget-${regionWidget.id}-toolbar"
>>>>>>>>> style="float:right;">
>>>>>>>>> +                                <button
id="widget-${regionWidget.id}-max"
>>>>>>>>> +                                  
                    class="widget-toolbar-btn"
>>>>>>>>> +                                  
                    onclick="rave.toolbarMaximize(this)"></button>
>>>>>>>>> +                                <button
id="widget-${regionWidget.id}-remove"
>>>>>>>>> +                                  
                    class="widget-toolbar-btn"
>>>>>>>>> +
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> onclick="rave.toolbarDelete(this,${regionWidget.id},${region.id},${de
>>>>>>>>> fau
>>>>>>>>> lt
>>>>>>>>> Page.id})">
>>>>>>>>> +                                </button>
>>>>>>>>> +                                <script>
>>>>>>>>> +                                  
    //This decorates the toolbar buttons.  As currently written,
>>>>>>>>> +                                  
    //it needs to be in the forEach loop.
>>>>>>>>> +                                  
    $("#widget-${regionWidget.id}-max").button({
>>>>>>>>> +                                  
    text: false,
>>>>>>>>> +                                  
    icons: {
>>>>>>>>> +                                  
    primary: "ui-icon-arrow-4-diag"
>>>>>>>>> +                                  
    }
>>>>>>>>> +                                  
    });
>>>>>>>>> +
>>>>>>>>> +                                  
    $("#widget-${regionWidget.id}-remove").button({
>>>>>>>>> +                                  
    text: false,
>>>>>>>>> +                                  
    icons: {
>>>>>>>>> +                                  
    primary: "ui-icon-close"
>>>>>>>>> +                                  
    }
>>>>>>>>> +                                  
    });
>>>>>>>>> +                                </script>
>>>>>>>>> +
>>>>>>>>> +                              </span>
>>>>>>>>> +                </div>
>>>>>>>>>         <div class="widget" id="widget-${regionWidget.id}-body">
>>>>>>>>>                         <!--
>>>>>>>>>                                    
   Among other things, the render-widget tag will populate the
>>>>>>>>> widgets[] array.
>>>>>>>>>
>>>>>>>>> Modified:
>>>>>>>>> incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>>>>>>>> URL:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/mai
>>>>>>>>> n/w
>>>>>>>>> eb
>>>>>>>>> app/script/rave.js?rev=1132706&r1=1132705&r2=1132706&view=diff
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> =====================================================================
>>>>>>>>> ===
>>>>>>>>> ==
>>>>>>>>> ====
>>>>>>>>> --- incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>>>>>>>> (original)
>>>>>>>>> +++ incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>>>>>>>> Mon
>>>>>>>>> Jun  6 17:10:32 2011
>>>>>>>>> @@ -105,6 +105,36 @@ var rave = rave || (function() {
>>>>>>>>>
>>>>>>>>>     })();
>>>>>>>>>
>>>>>>>>> +       /**
>>>>>>>>> +        * Group widget toolbar functions
>>>>>>>>> +        */
>>>>>>>>> +       var toolbar = (function() {
>>>>>>>>> +                function init(){
>>>>>>>>> +                }
>>>>>>>>> +                function maximizeAction(button){
>>>>>>>>> +                              alert("Maximize:
"+button.id+" not yet implemented.");
>>>>>>>>> +
>>>>>>>>> +                };
>>>>>>>>> +                function
>>>>>>>>> deleteAction(button,myRegionWidgetId,myRegionId,myPageId){
>>>>>>>>> +//                            alert("Delete:"+button.id+"
"+myRegionWidgetId+"
>>>>>>>>> "+myRegionId+"
>>>>>>>>> "+myPageId);
>>>>>>>>> +                              rave.api.rpc.removeWidget({
>>>>>>>>> +                                  
    regionWidgetId: myRegionWidgetId,
>>>>>>>>> +                                  
    pageId : myPageId,
>>>>>>>>> +                                  
    region: {
>>>>>>>>> +                                  
             id : myRegionId
>>>>>>>>> +                                  
    },
>>>>>>>>> +                                  
    succCB: function() {
>>>>>>>>> +                                  
             $("#widget-wrapper-"+myRegionWidgetId).remove();
>>>>>>>>> +                                  
    }
>>>>>>>>> +                              });
>>>>>>>>> +                              rave.mapGadgetToRegion(myRegionWidgetId,
myRegionId);
>>>>>>>>> +                };
>>>>>>>>> +                return {
>>>>>>>>> +                              maximizeAction
: maximizeAction,
>>>>>>>>> +                              deleteAction
: deleteAction
>>>>>>>>> +                }
>>>>>>>>> +       })();
>>>>>>>>> +
>>>>>>>>>     function initializeProviders() {
>>>>>>>>>                  //Current providers are rave.wookie
and rave.opensocial.
>>>>>>>>>                  //Providers register themselves
when loaded, so
>>>>>>>>> @@ -161,14 +191,6 @@ var rave = rave || (function() {
>>>>>>>>>     }
>>>>>>>>>
>>>>>>>>>         /**
>>>>>>>>> -        * Deletes the gadget/widget from the display.
>>>>>>>>> -     * TODO: must be implemented.
>>>>>>>>> -        */
>>>>>>>>> -       function deleteWidgetFromPage() {
>>>>>>>>> -                return null;
>>>>>>>>> -       }
>>>>>>>>> -
>>>>>>>>> -       /**
>>>>>>>>>          * Map a widget to the region where it is
located.
>>>>>>>>>          *
>>>>>>>>>          * @param widgetId: id of the widget (not
DOM id)
>>>>>>>>> @@ -248,10 +270,6 @@ var rave = rave || (function() {
>>>>>>>>>          */
>>>>>>>>>         getContext: getContext,
>>>>>>>>>
>>>>>>>>> -      /**
>>>>>>>>> -      * Remove a selected gadget from the page
>>>>>>>>> -      */
>>>>>>>>> -      deleteGadget : deleteWidgetFromPage,
>>>>>>>>>
>>>>>>>>>        /**
>>>>>>>>>         * Change or delete gadget to region map entry.
>>>>>>>>> @@ -261,6 +279,12 @@ var rave = rave || (function() {
>>>>>>>>>        /**
>>>>>>>>>         * Get the region where a widget/gadget belongs
to.
>>>>>>>>>         */
>>>>>>>>> -      getGadgetRegion : getGadgetRegion
>>>>>>>>> +        getGadgetRegion : getGadgetRegion,
>>>>>>>>> +
>>>>>>>>> +                /**
>>>>>>>>> +                      * These are exposed
toolbar actions, associated with widget
>>>>>>>>> toolbar
>>>>>>>>> buttons
>>>>>>>>> +                      */
>>>>>>>>> +                toolbarMaximize : toolbar.maximizeAction,
>>>>>>>>> +                toolbarDelete : toolbar.deleteAction
>>>>>>>>>     }
>>>>>>>>> })();
>>>>>>>>> \ No newline at end of file
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG/MacGPG2 v2.0.16 (Darwin)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iQEcBAEBAgAGBQJN7R24AAoJEEfVXEODPFIDH2oH/0nB6T0QNlDBjeUzs4WLM+pu
> khbPiuBmkvs+DP8wRubJVLbebIlVVoL1egIUamz2tmyjItGkTfs7PQ8GtxxB96QP
> twOPF7l4irX64yaPYanYiInn70bIm5RPJsXeFmursjCI3dyEqxHHAWGop+r8m/Iy
> KVPDpeJtHr7hMkkPiShZe0lJDKIZzHlFwq+fArgVPIXK9mcgna1E00zq2e0F1TgM
> oj5tuYvwSXDYLEaPl7X50PWQMqOQ7yX5KR4A8H0o9NVDMkvn6mXw+CSHp3lzAKzj
> ubqI+mCwzoXdQclBaJafss+7loK8zbeyy+EAkFHg1SyfIzynWcZJcaDWlssebyw=
> =08Wn
> -----END PGP SIGNATURE-----
>

Mime
View raw message