Sha256: 01840176a3f01cddfe3c58dd15b2e476df2a4197785b7a5289fb2a1df8fa4ef7

Contents?: true

Size: 1.54 KB

Versions: 8

Compression:

Stored size: 1.54 KB

Contents

module AnafHabtm
  module ApplicationHelperMethods
    def remove_child_link(name, form_builder)
      value = form_builder.object.new_record? ? "1" : "false"
      klass = form_builder.object.class.name.underscore
      form_builder.hidden_field(:_destroy,  {:value=>value, "data-remove"=>klass}) +
      link_to(name, options={}, html_options={"href"=>"#", "class"=>"remove-child-link", :tabindex=> "0"})
    end

    def add_child_link(name, child, form_builder)
      # puts "||#{form_builder}||"
      new_form = new_child_fields(child, form_builder)
      raw(content_tag(:div, new_form, {:id=>"#{child}_template", :class=>"form-template"}, escape=false))+
      link_to(name, options={}, html_options={"href"=>"#", "class"=>"add-child-link", "data-class-name"=>child})
    end

    def new_child_fields(child, form_builder)
      output = ""
      form_builder.fields_for(child.pluralize.to_sym, child.camelize.constantize.new, :child_index => "__#{child}_id__") do |f|
        output += render(:partial => child.underscore, :locals => { :f => f })
      end
      output
    end

    def tfwac(f, field, controller, opts={})
      opts["data-auto-complete"]='tf'
      opts["data-auto-complete-url"]=eval("#{controller.to_s.underscore.tableize}_path(:format=>:json)")
      f.text_field field, opts
    end

    def text_area_with_auto_complete(f, field, controller, opts={})
      opts["data-auto-complete"]='ta'
      opts["data-auto-complete-url"]=eval("#{controller.to_s.underscore.tableize}_path(:format=>:json)")
      f.text_area field, opts
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
anaf_habtm-0.0.96 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.95 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.94 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.93 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.92 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.89 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.87 lib/anaf_habtm/application_helper_methods.rb
anaf_habtm-0.0.86 lib/anaf_habtm/application_helper_methods.rb