Module: AjaxLoading::ApplicationHelpers

Defined in:
lib/ajax_loading/application_helpers.rb

Instance Method Summary collapse

Instance Method Details

For loading associated objects.



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/ajax_loading/application_helpers.rb', line 29

def ajax_association_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
  options[:controller] ||= ass_controller
  options[:container] ||= object.element_id(association)

  if ass_info.macro == :belongs_to
    options[:id] ||= object.send(ass_info.association_foreign_key)
    options[:action] ||= :show
  else
    options[object.class.name.foreign_key] ||= object.id
    options[:action] ||= :index
  end
  link_to name, options, :remote=> true
end

#ajax_box_id(object, association) ⇒ Object



18
19
20
# File 'lib/ajax_loading/application_helpers.rb', line 18

def ajax_box_id(object, association)
  object.element_id(:show, association)
end

#ajax_loading_fields(container, ajax_function) ⇒ Object



3
4
5
6
7
8
9
# File 'lib/ajax_loading/application_helpers.rb', line 3

def ajax_loading_fields(container, ajax_function)
  action = resource.new_record? ? :create : :update
  container ||= default_container(action)
  ajax_function ||= default_container(action)
  (:input, nil, :type=>"hidden", :name=>"container", :value=>container) +
  (:input, nil, :type=>"hidden", :name=>"ajax_function", :value=>ajax_function)
end

#default_ajax_functionObject



11
12
13
14
15
# File 'lib/ajax_loading/application_helpers.rb', line 11

def default_ajax_function
  case params[:action]
  when "index"
  end
end

#growl(title, msg, type = :info) ⇒ Object



24
25
26
# File 'lib/ajax_loading/application_helpers.rb', line 24

def growl(title, msg, type=:info)
  "$.growl('#{title}', '#{msg}', '/images/growl/#{type}.png');"
end

#render_js(options = {}) ⇒ Object



21
22
23
# File 'lib/ajax_loading/application_helpers.rb', line 21

def render_js(options={})
  "'"+escape_javascript(render(options))+"'"
end