Sha256: 783eb288c442aaf1be981f8093cf87d7d556eef32a0b26a57488ee495769685b
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 KB
Contents
# encoding: utf-8 module DynamicFieldsForHelper def link_to_add_fields(form, association, name=nil, css_classes=nil, &block) new_object = form.object.send(association).klass.new id = new_object.object_id fields = form.fields_for(association, new_object, child_index: id) do |builder| render("#{form.object.class.name.downcase.pluralize}/#{association.to_s.singularize}_fields", fields: builder) end css_classes = css_classes(DynamicFieldsForRails.add_css_classes, css_classes) if block_given? link_to('#', class: css_classes, data: {id: id, fields: fields.gsub("\n", "")}, &block) else link_to(name, '#', class: css_classes, data: {id: id, fields: fields.gsub("\n", "")}) end end def link_to_delete_fields(fields, name=nil, css_classes=nil, &block) link = [] link << fields.hidden_field(:_destroy) css_classes = css_classes(DynamicFieldsForRails.delete_css_classes, css_classes) if block_given? link << link_to('#', class: css_classes, title: name, &block) else link << link_to(name, '#', class: css_classes) end return link.join('').html_safe end protected def css_classes(default, css_class) style_class = [] style_class << default unless default.blank? style_class << css_class unless css_class.blank? style_class.join(' ') end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dynamic_fields_for_rails-0.3.0 | app/helpers/dynamic_fields_for_helper.rb |