I have a set of A tags that I would like to watch unobtrusively. I have given them all the same classname, and I want to use invoke to set them up, rather than each. Am I trying to do something that won''t work? var blah = function(){ //this function would do way more than this alert (this); } $$(''a.more'').invoke(''observe'',''click'',blah); This works fine, but I want to stop the event, and none of these do the trick: this.stop() Event.stop(this) or even extending the invoke with an additional argument after blah and using that as the event. $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); The only way I have been able to hack it to actually do what I want is to set this.href to null. Which feels wrong in many ways. What''s the right way to do this -- unobtrusively setting these links to not work, yet leaving them alone for those who don''t have JS enabled? Can I do this with invoke or do I need to get out and push with each? Thanks in advance, Walter --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
try this. $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this)); function blah(event){ //this function would do way more than this event.stop(); alert ("blah"); } and for more information take a look on the api doc''s http://www.prototypejs.org/api/function/bind http://www.prototypejs.org/api/function/bindAsEventListener On Thu, Mar 6, 2008 at 10:41 AM, Walter Lee Davis <waltd-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> > I have a set of A tags that I would like to watch unobtrusively. I > have given them all the same classname, and I want to use invoke to > set them up, rather than each. Am I trying to do something that won''t > work? > > var blah = function(){ > //this function would do way more than this > alert (this); > } > > $$(''a.more'').invoke(''observe'',''click'',blah); > > This works fine, but I want to stop the event, and none of these do > the trick: > > this.stop() > Event.stop(this) > > or even extending the invoke with an additional argument after blah > and using that as the event. > > $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); > > The only way I have been able to hack it to actually do what I want > is to set this.href to null. Which feels wrong in many ways. > > What''s the right way to do this -- unobtrusively setting these links > to not work, yet leaving them alone for those who don''t have JS > enabled? Can I do this with invoke or do I need to get out and push > with each? > > Thanks in advance, > > Walter > > > >-- {a human being that was given to fly} --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
AH! I tried bindAsEventListener, but not in the correct spot. Thanks!! Walter On Mar 6, 2008, at 11:59 AM, Elden wrote:> $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this));--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Just to wrap this up, here''s what worked: var details = function(evt){ Event.stop(evt); var elm = Event.element(evt); alert(elm); } $$(''a.more'').invoke(''observe'',''click'',details.bindAsEventListener (''evt'')); Thanks again for setting me on the right track. Walter On Mar 6, 2008, at 11:59 AM, Elden wrote:> try this. > > $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this)); > > function blah(event){ > //this function would do way more than this > event.stop(); > alert ("blah"); > } > > and for more information take a look on the api doc''s > > http://www.prototypejs.org/api/function/bind > > http://www.prototypejs.org/api/function/bindAsEventListener > > On Thu, Mar 6, 2008 at 10:41 AM, Walter Lee Davis > <waltd-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: > > I have a set of A tags that I would like to watch unobtrusively. I > have given them all the same classname, and I want to use invoke to > set them up, rather than each. Am I trying to do something that won''t > work? > > var blah = function(){ > //this function would do way more than this > alert (this); > } > > $$(''a.more'').invoke(''observe'',''click'',blah); > > This works fine, but I want to stop the event, and none of these do > the trick: > > this.stop() > Event.stop(this) > > or even extending the invoke with an additional argument after blah > and using that as the event. > > $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); > > The only way I have been able to hack it to actually do what I want > is to set this.href to null. Which feels wrong in many ways. > > What''s the right way to do this -- unobtrusively setting these links > to not work, yet leaving them alone for those who don''t have JS > enabled? Can I do this with invoke or do I need to get out and push > with each? > > Thanks in advance, > > Walter > > > > > > -- > {a human being that was given to fly} > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Walter, Am I missing something about bindAsEventListener when you pass it a string for the thisObj parameter? Because it looks to me like you''re binding your ''details'' function such that when the function is called in response to the event, the ''this'' keyword will refer to the string "evt". It doesn''t matter in your example because your ''details'' function never uses ''this'' (instead it gets the element that was clicked using Event.element, which is reasonable), but I thought I''d ask the question... -- T.J. Crowder tj / crowder software / com On Mar 6, 5:20 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> Just to wrap this up, here''s what worked: > > var details = function(evt){ > Event.stop(evt); > var elm = Event.element(evt); > alert(elm); > } > $$(''a.more'').invoke(''observe'',''click'',details.bindAsEventListener > (''evt'')); > > Thanks again for setting me on the right track. > > Walter > > On Mar 6, 2008, at 11:59 AM, Elden wrote: > > > try this. > > > $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this)); > > > function blah(event){ > > //this function would do way more than this > > event.stop(); > > alert ("blah"); > > } > > > and for more information take a look on the api doc''s > > >http://www.prototypejs.org/api/function/bind > > >http://www.prototypejs.org/api/function/bindAsEventListener > > > On Thu, Mar 6, 2008 at 10:41 AM, Walter Lee Davis > > <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: > > > I have a set of A tags that I would like to watch unobtrusively. I > > have given them all the same classname, and I want to use invoke to > > set them up, rather than each. Am I trying to do something that won''t > > work? > > > var blah = function(){ > > //this function would do way more than this > > alert (this); > > } > > > $$(''a.more'').invoke(''observe'',''click'',blah); > > > This works fine, but I want to stop the event, and none of these do > > the trick: > > > this.stop() > > Event.stop(this) > > > or even extending the invoke with an additional argument after blah > > and using that as the event. > > > $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); > > > The only way I have been able to hack it to actually do what I want > > is to set this.href to null. Which feels wrong in many ways. > > > What''s the right way to do this -- unobtrusively setting these links > > to not work, yet leaving them alone for those who don''t have JS > > enabled? Can I do this with invoke or do I need to get out and push > > with each? > > > Thanks in advance, > > > Walter > > > -- > > {a human being that was given to fly}--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
I tried using the keyword this in the bindAsEventListener and inside the details function, and that did not work. What appeared to be bound was the anchor, not the event. And I was right back where I started with not being able to stop the click event before the link was followed. Should this: $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this)); Have been this: $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(''this'')); Because I can see that the former is passing an object while the latter is passing a string. Walter On Mar 7, 2008, at 6:26 AM, T.J. Crowder wrote:> > Walter, > > Am I missing something about bindAsEventListener when you pass it a > string for the thisObj parameter? Because it looks to me like you''re > binding your ''details'' function such that when the function is called > in response to the event, the ''this'' keyword will refer to the string > "evt". It doesn''t matter in your example because your ''details'' > function never uses ''this'' (instead it gets the element that was > clicked using Event.element, which is reasonable), but I thought I''d > ask the question... > -- > T.J. Crowder > tj / crowder software / com > > On Mar 6, 5:20 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: >> Just to wrap this up, here''s what worked: >> >> var details = function(evt){ >> Event.stop(evt); >> var elm = Event.element(evt); >> alert(elm); >> } >> $$(''a.more'').invoke >> (''observe'',''click'',details.bindAsEventListener >> (''evt'')); >> >> Thanks again for setting me on the right track. >> >> Walter >> >> On Mar 6, 2008, at 11:59 AM, Elden wrote: >> >>> try this. >> >>> $$(''a.more'').invoke("observe","click",blah.bindAsEventListener >>> (this)); >> >>> function blah(event){ >>> //this function would do way more than this >>> event.stop(); >>> alert ("blah"); >>> } >> >>> and for more information take a look on the api doc''s >> >>> http://www.prototypejs.org/api/function/bind >> >>> http://www.prototypejs.org/api/function/bindAsEventListener >> >>> On Thu, Mar 6, 2008 at 10:41 AM, Walter Lee Davis >>> <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: >> >>> I have a set of A tags that I would like to watch unobtrusively. I >>> have given them all the same classname, and I want to use invoke to >>> set them up, rather than each. Am I trying to do something that >>> won''t >>> work? >> >>> var blah = function(){ >>> //this function would do way more than this >>> alert (this); >>> } >> >>> $$(''a.more'').invoke(''observe'',''click'',blah); >> >>> This works fine, but I want to stop the event, and none of these do >>> the trick: >> >>> this.stop() >>> Event.stop(this) >> >>> or even extending the invoke with an additional argument after blah >>> and using that as the event. >> >>> $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); >> >>> The only way I have been able to hack it to actually do what I want >>> is to set this.href to null. Which feels wrong in many ways. >> >>> What''s the right way to do this -- unobtrusively setting these links >>> to not work, yet leaving them alone for those who don''t have JS >>> enabled? Can I do this with invoke or do I need to get out and push >>> with each? >> >>> Thanks in advance, >> >>> Walter >> >>> -- >>> {a human being that was given to fly} > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Unless you really want "this" to reference a string object within your handler, you won''t want to pass strings into bindAsEventListener as far as I can see. The first parameter to bindAsEventListener is the object that you want to access via "this" within the handler (http://www.prototypejs.org/ api/function/bind, http://www.prototypejs.org/api/function/bindAsEventListener). When the handler is called in response to an event, the first argument to it will be the event object for the event. These are two separate things. So for example, if I have a method called "handleIt" on an object instance assigned to a variable called "myThingy" and an element with the ID "someDiv", this code: $(''somediv'').observe(''click'', myThingy.handleIt.bindAsEventListener(myThingy)); ...means that when "someDiv" is clicked, the "handleIt" method will be called with "this" referencing "myThingy" and with the first parameter being the event object generated by the click. You only care what "this" is if you''re going to use it within the handler; if you''re just interested in the event or the element on which the event occurred, you don''t need "this" at all, just use the first argument (the event) and the element that generated it [Event.element(eventObject)]. Hope this helps, -- T.J. Crowder tj / crowder software / com On Mar 7, 2:08 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> I tried using the keyword this in the bindAsEventListener and inside > the details function, and that did not work. What appeared to be > bound was the anchor, not the event. And I was right back where I > started with not being able to stop the click event before the link > was followed. > > Should this: > > $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(this)); > > Have been this: > > $$(''a.more'').invoke("observe","click",blah.bindAsEventListener(''this'')); > > Because I can see that the former is passing an object while the > latter is passing a string. > > Walter > > On Mar 7, 2008, at 6:26 AM, T.J. Crowder wrote: > > > > > Walter, > > > Am I missing something about bindAsEventListener when you pass it a > > string for the thisObj parameter? Because it looks to me like you''re > > binding your ''details'' function such that when the function is called > > in response to the event, the ''this'' keyword will refer to the string > > "evt". It doesn''t matter in your example because your ''details'' > > function never uses ''this'' (instead it gets the element that was > > clicked using Event.element, which is reasonable), but I thought I''d > > ask the question... > > -- > > T.J. Crowder > > tj / crowder software / com > > > On Mar 6, 5:20 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: > >> Just to wrap this up, here''s what worked: > > >> var details = function(evt){ > >> Event.stop(evt); > >> var elm = Event.element(evt); > >> alert(elm); > >> } > >> $$(''a.more'').invoke > >> (''observe'',''click'',details.bindAsEventListener > >> (''evt'')); > > >> Thanks again for setting me on the right track. > > >> Walter > > >> On Mar 6, 2008, at 11:59 AM, Elden wrote: > > >>> try this. > > >>> $$(''a.more'').invoke("observe","click",blah.bindAsEventListener > >>> (this)); > > >>> function blah(event){ > >>> //this function would do way more than this > >>> event.stop(); > >>> alert ("blah"); > >>> } > > >>> and for more information take a look on the api doc''s > > >>>http://www.prototypejs.org/api/function/bind > > >>>http://www.prototypejs.org/api/function/bindAsEventListener > > >>> On Thu, Mar 6, 2008 at 10:41 AM, Walter Lee Davis > >>> <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: > > >>> I have a set of A tags that I would like to watch unobtrusively. I > >>> have given them all the same classname, and I want to use invoke to > >>> set them up, rather than each. Am I trying to do something that > >>> won''t > >>> work? > > >>> var blah = function(){ > >>> //this function would do way more than this > >>> alert (this); > >>> } > > >>> $$(''a.more'').invoke(''observe'',''click'',blah); > > >>> This works fine, but I want to stop the event, and none of these do > >>> the trick: > > >>> this.stop() > >>> Event.stop(this) > > >>> or even extending the invoke with an additional argument after blah > >>> and using that as the event. > > >>> $$(''a.more'').invoke(''observe'',''click'',blah,''evt''); > > >>> The only way I have been able to hack it to actually do what I want > >>> is to set this.href to null. Which feels wrong in many ways. > > >>> What''s the right way to do this -- unobtrusively setting these links > >>> to not work, yet leaving them alone for those who don''t have JS > >>> enabled? Can I do this with invoke or do I need to get out and push > >>> with each? > > >>> Thanks in advance, > > >>> Walter > > >>> -- > >>> {a human being that was given to fly}--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Okay, I get that so far, but what is the name of the event that is automatically passed as the first parameter? One of the other posters suggested I use event.stop(), but that just got me an error as event was not defined. Walter On Mar 7, 2008, at 9:58 AM, T.J. Crowder wrote:> > Unless you really want "this" to reference a string object within your > handler, you won''t want to pass strings into bindAsEventListener as > far as I can see. > > The first parameter to bindAsEventListener is the object that you want > to access via "this" within the handler (http://www.prototypejs.org/ > api/function/bind, http://www.prototypejs.org/api/function/ > bindAsEventListener). > When the handler is called in response to an event, the first argument > to it will be the event object for the event. These are two separate > things. > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Walter, The poster who directed you to using event vs this is correct. I didn''t look at the syntax specifically provided, but here is an excerpt from a real world example that I wrote: This is inside of a custom object, so some of the syntax might be slightly different than what you would need. setupLink:function() { var myLink = new Element(''A'').setStyle({''cursor'':''pointer''}).update(''remove''); myLink.observe(''click'', this.removeRow); }, removeRow:function(e) { e.element().up(''TR'').remove(); e.stop(); } The important part here is that when you''re using Event.observe, it passes the actual event as the first argument to the callback function. The ''this'' keyword probably isn''t a concern in your case, so you shouldn''t need to use bind or bindAsEventListener. You should instead be using whatever name you gave to the event in the definition of your function. In my case, ''e''. If you do not use bind or bindAs..., this will refer to the A(nchor) element that was clicked. Only use bind or bindAs... if you need to change what ''this'' refers to. A great tool for figuring out what this refers to is firebug in firefox 2. As I mentioned, my example is within a custom object, but my callback function isn''t using ''this'' to modify my object, so I have no need to use bindAsEventListener. If I wanted ''this'' to refer to my custom object, then my observe call would have looked like this: myLink.observe(''click'', this.removeRow.bindAsEventListener(this)); Hope that helps, Knox On Mar 7, 8:08 am, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> Okay, I get that so far, but what is the name of the event that is > automatically passed as the first parameter? One of the other posters > suggested I use event.stop(), but that just got me an error as event > was not defined. > > Walter > > On Mar 7, 2008, at 9:58 AM, T.J. Crowder wrote: > > > > > Unless you really want "this" to reference a string object within your > > handler, you won''t want to pass strings into bindAsEventListener as > > far as I can see. > > > The first parameter to bindAsEventListener is the object that you want > > to access via "this" within the handler (http://www.prototypejs.org/ > > api/function/bind,http://www.prototypejs.org/api/function/ > > bindAsEventListener). > > When the handler is called in response to an event, the first argument > > to it will be the event object for the event. These are two separate > > things.--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
> Okay, I get that so far, but what is the name of the event that is > automatically passed as the first parameter?It''s totally up to you -- you''re the one defining the function that''s getting called, you define the names of its parameters. You can call it flapjack if you like. :) In his first reply to you, Elden called it "event" -- here''s the code he posted, with ===>markers<=== in both of the relevant places: function blah(===>event<===){ //this function would do way more than this ===>event<===.stop(); alert ("blah"); } Since he called it "event" in the function signature, that''s the name he used in the code; but this would also work: function blah(flapjack){ //this function would do way more than this flapjack.stop(); alert ("blah"); } Hope this helps, -- T.J. Crowder tj / crowder software / com On Mar 7, 3:08 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> Okay, I get that so far, but what is the name of the event that is > automatically passed as the first parameter? One of the other posters > suggested I use event.stop(), but that just got me an error as event > was not defined. > > Walter > > On Mar 7, 2008, at 9:58 AM, T.J. Crowder wrote: > > > > > Unless you really want "this" to reference a string object within your > > handler, you won''t want to pass strings into bindAsEventListener as > > far as I can see. > > > The first parameter to bindAsEventListener is the object that you want > > to access via "this" within the handler (http://www.prototypejs.org/ > > api/function/bind,http://www.prototypejs.org/api/function/ > > bindAsEventListener). > > When the handler is called in response to an event, the first argument > > to it will be the event object for the event. These are two separate > > things.--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Thanks again for your patient explanations. I missed the fact that he defined it in the function. Walter On Mar 7, 2008, at 1:10 PM, T.J. Crowder wrote:> >> Okay, I get that so far, but what is the name of the event that is >> automatically passed as the first parameter? > > It''s totally up to you -- you''re the one defining the function that''s > getting called, you define the names of its parameters. You can call > it flapjack if you like. :) In his first reply to you, Elden called it > "event" -- here''s the code he posted, with ===>markers<=== in both of > the relevant places: > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---