Sha256: 6338e594de2ac4c3f0ca5399603c4b62b6585de09ba8e6e5214187d6d4fa49e7

Contents?: true

Size: 944 Bytes

Versions: 3

Compression:

Stored size: 944 Bytes

Contents

class StandardFormBuilder < AbstractFormBuilder
  
  # text_field_block(:username, { :class => 'long' }, { :class => 'wide-label' })
  # text_area_block(:username, { :class => 'long' }, { :class => 'wide-label' })
  # password_field_block(:username, { :class => 'long' }, { :class => 'wide-label' })
  # file_field_block(:username, { :class => 'long' }, { :class => 'wide-label' })
  self.field_types.each do |field_type|
    class_eval <<-EOF
    def #{field_type}_block(field, options={}, label_options={})
      label_options.reverse_merge!(:caption => options.delete(:caption)) if options[:caption]
      field_html = label(field, label_options)
      field_html << #{field_type}(field, options)
      @template.content_tag(:p, field_html)
    end
    EOF
  end

  # submit_block("Update")
  def submit_block(caption, options={})
    submit_html = @template.submit_tag(caption, options)
    @template.content_tag(:p, submit_html)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
sinatra_more-0.1.9 lib/sinatra_more/markup_plugin/form_builder/standard_form_builder.rb
sinatra_more-0.1.8 lib/sinatra_more/markup_plugin/form_builder/standard_form_builder.rb
sinatra_more-0.1.7 lib/sinatra_more/markup_plugin/form_builder/standard_form_builder.rb