Sha256: a1bee14a76e663ea5ff1eb39e6ba5dbb83a354376c5dc75b2eaab73a1eb70819

Contents?: true

Size: 644 Bytes

Versions: 3

Compression:

Stored size: 644 Bytes

Contents

module SimpleForm
  module Inputs
    class StringInput < Base
      def input
        @builder.text_field(attribute_name, input_html_options)
      end

      def input_html_options
        input_options = super
        input_options[:size]      ||= [limit, SimpleForm.default_input_size].compact.min
        input_options[:maxlength] ||= limit if limit

        unless input_type == :string
          input_options[:type] ||= input_type
          input_options[:class]  = "string #{input_options[:class]}"
        end

        input_options
      end

    protected

      def limit
        column && column.limit
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
simple_form-1.2.0 lib/simple_form/inputs/string_input.rb
simple_form-1.1.3 lib/simple_form/inputs/string_input.rb
simple_form-1.1.2 lib/simple_form/inputs/string_input.rb