Sorry, spaced out.  Your css selector patch work fine.  It's in there
now. Back to the coffee shop for me...

On Sep 21, 1:27 pm, "mr.freeze" <nat...@freezable.com> wrote:
> I implemented the args patch but I disagree on the custom selector
> patch because it will remove the ability to execute arbitrary script
> on success.  You would be limited to eval'ing the response or updating
> the selected element.  I also added two new features:
>
> Here is the new signature of EventManager.listen:
> def listen(event, helper, handler, success="eval(msg);",
> data='form:first', args=None, persist=False, event_args=False):
>
> persist=False - setting this to true will use 'live' instead of 'bind'
> so you can replace elements and maintain the event.
> event_args=False - setting this to true will return information about
> the event to the server in the callback.
>
> Sample event_args data:
> <Storage {'event_target_html': '<div id="clickme">Click me</div>',
> 'event_pageY': '134', 'event_pageX': '286', 'event_id': 'clickme',
> 'event_timeStamp': '1253557228873'}>
>
> Thanks for the feedback. Keep it coming!
>
> On Sep 20, 10:37 pm, Thadeus Burgess <thadeus.burg...@gmail.com>
> wrote:
>
> > Opps... here is a correction to my custom css selector to success variable.
>
> >                 raise ValueError('Invalid success component for event. No ID
> > attribute found.')
> > 137-         else:
> > 137+        elif success != "eval(msg);":
> >             success = 'jQuery("%s").html(msg);' % success
>
> > -Thadeus
>
> > On Sun, Sep 20, 2009 at 10:00 PM, Thadeus Burgess <thadeus.burg...@gmail.com
>
> > > wrote:
> > > Also, to allow passing a custom CSS selector to the success, for when you
> > > don't want to create the representation in controller
>
> > > 132        if hasattr(success,'xml'):
> > > 133            if success['_id']:
> > > 134                success = 'jQuery("#%s").html(msg);' % success['_id']
> > > 135            else:
> > > 136                raise ValueError('Invalid success component for event.
> > > No ID attribute found.')
> > > 137+        else:
> > > 138+            success = 'jQuery("%s").html(msg);' % success
>
> > > -Thadeus
>
> > > On Sun, Sep 20, 2009 at 9:40 PM, Thadeus Burgess <
> > > thadeus.burg...@gmail.com> wrote:
>
> > >> Thats cool!
>
> > >> Here is a patch to allow for passing args to the handler URL.
>
> > >> 115-     def listen(self, event, helper, handler, success="eval(msg);",
> > >> data='form:first'):
> > >> 115+    def listen(self, event, helper, handler, success="eval(msg);",
> > >> data='form:first',  handler_args=''):
>
> > >>  137-           url = URL(r=self.environment.request,f=handler.__name__)
> > >>  137+           url =
> > >> URL(r=self.environment.request,f=handler.__name__,args=handler_args)
>
> > >> -Thadeus
>
> > >> On Sun, Sep 20, 2009 at 9:19 AM, mr.freeze <nat...@freezable.com> wrote:
>
> > >>> Thanks Iceberg.  I'll try to post more examples that show the
> > >>> difference. Also, if you think of anything it could be doing better,
> > >>> let me know.
>
> > >>> On Sep 20, 6:57 am, Iceberg <iceb...@21cn.com> wrote:
> > >>> > On Sep20, 2:14am, "mr.freeze" <nat...@freezable.com> wrote:
>
> > >>> > > Hi folks,
>
> > >>> > >     I just wanted to share a module that I'm working on for a
> > >>> > > project.  It contains tools for managing client events and resources
> > >>> > > from the server.  Here are the main features:
>
> > >>> > > 1) Dynamic inclusion and downloading of resources (scripts/css).
> > >>> > > 2) Server side event handling for client side events.
> > >>> > > 3) Dynamic execution of script from the controller. (through
> > >>> > > document.ready injection)
> > >>> > > 4) Helpers for google hosted ajax APIs.
>
> > >>> > > You can see instructions and examples here:
>
> > >>> > >http://www.web2pyslices.com/main/slices/take_slice/8
>
> > >>> > > It's definitely a work in progress, but let me know what you think.
>
> > >>> > > -Nathan
>
> > >>> > After trying to implement your 4 examples in a "normal" way, which
> > >>> > turns out to be tricky or even difficult (especially in the last two
> > >>> > cases), I am convinced that this client tools have its great value!
> > >>> > Well done, Nathan!
>
> > >>> > This stuff looks cool. Would you please give some more example (in
> > >>> > your slice site) to demonstrate what mission this tool performs easier
> > >>> > than otherwise?
>
> > >>> > I don't mean this stuff is not good. I just have poor imagination and
> > >>> > sorry for that. :-)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to