Sha256: 02bffe6c2ab327594c36e210083f702bac325c06372bfcbcfbbd29430614057e

Contents?: true

Size: 788 Bytes

Versions: 10

Compression:

Stored size: 788 Bytes

Contents

# Helper for quickly building forms and templates without having to rewrite the same HTML element wrappers.
class Manifest::LabelledFormBuilder < ActionView::Helpers::FormBuilder
  %w[text_field check_box collection_select check_box text_area date_select datetime_select time_select].each do |method_name|
    define_method(method_name) do |name, *args|
      classes = %w[field]

      if %w[collection_select check_box].include? method_name
        classes << 'inline-label'
      end

      @template.content_tag :div, class: classes.join(' ') do
        label(name) + super(name, *args)
      end
    end
  end

  %w[submit].each do |method_name|
    define_method(method_name) do
      @template.content_tag :div, class: 'form-actions' do
        super()
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
manifest-rails-0.2.8 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.7 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.6 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.5 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.4 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.3 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.2 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.1 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.2.0 app/form_builders/manifest/labelled_form_builder.rb
manifest-rails-0.1.3 app/form_builders/manifest/labelled_form_builder.rb