Sha256: 5f5be9832e0e253bab6d37ad0c9df5a09d9b3190489974c95483e4e7274a3001
Contents?: true
Size: 1.58 KB
Versions: 6
Compression:
Stored size: 1.58 KB
Contents
module AjaxLoading module ApplicationHelpers def ajax_box_id(object, association) object.element_id(:show, association) end def render_js(options={}) "'"+escape_javascript(render(options))+"'" end def growl(title, msg, type=:info) "$.growl('#{title}', '#{msg}', 'images/growl/#{type}.png');" end def loadbehind_link(name, object, association, options={}) # This should go to the controller for the association class! ass_info = object.class.reflect_on_association(association) ass_controller = options[:controller] ||= ass_info.klass.name.tableize controller_action = (ass_info.macro==:belongs_to) ? :show : :index if ass_info.macro == :belongs_to link_to name, :controller=>ass_controller, :action=>:show, :id=>object.send(ass_info.association_foreign_key), :container=>object.element_id(association), :remote=>true else form_tag({:controller=>ass_controller, :action=>:index}, :method=>:get, :remote=>true, :id=>object.element_id(:show, association)) do concat hidden_field(:associated, :class_name, :value=>object.class.name) + hidden_field(:associated, :id, :value=>object.id) + hidden_field(:associated, :association, :value=>association.to_s) + link_to(name,{},{:href=>"#", "data-submit"=>object.element_id(:show, association)}) end end end end end ActionView::Base.send :include, AjaxLoading::ApplicationHelpers
Version data entries
6 entries across 6 versions & 1 rubygems