This may seen kind of lame but works as far. If anyone knows better
solution - share it please :)
module ActionController
class Base
private
def render_for_text_with_flashes(text = nil, status = nil,
append_response = false) #:nodoc:
result = render_for_text_without_flashes(text, status,
append_response)
if response.content_type == Mime::JS
response.body << "$('messages').update('#
{self.instance_variable_get("@template").message_block :flash_types =>
%w(back confirm error info warn notice), :on =>
MODEL_NAMES_FOR_MB}');new Effect.Highlight('messages'); "
end
result
end
alias_method_chain :render_for_text, :flashes
end
end
On Jul 14, 10:13 am, stevo84 <[email protected]> wrote:
> Hello
>
> I would like to execute specific action rendering something into page
> after each of my ajax calls. In example I would like to update some
> div or display an alert.
>
> How I imagine it could work is as follows
>
> class ApplicationController < ActionController::Base
> after_filter :do_something_after_each_ajax_call
>
> def do_something_after_each_ajax_call
> if request.xml_http_request?
> render :update do |page|
> page << "alert('doing something!');
> end
> end
> end
> end
>
> Of course code above will yield with "Can only render or redirect once
> per action". How would You approach this problem?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---