Sha256: ef155b7badb4b0b4d92594af96e3838075a5e7237e2d22d395a7e6414635aeb1

Contents?: true

Size: 1.08 KB

Versions: 4

Compression:

Stored size: 1.08 KB

Contents

module Inputs
  module EffectiveDateTimePicker
    class Input < Effective::FormInput
      delegate :content_tag, :text_field_tag, :to => :@template

      def default_input_js
        {:format => 'YYYY-MM-DD h:mm A', :sideBySide => true}
      end

      def default_input_html
        {class: 'effective_date_time_picker datetime'}
      end

      def to_html
        if options[:input_group] == false
          return text_field_tag(field_name, value, tag_options)
        end

        content_tag(:div, class: 'input-group') do
          content_tag(:span, class: 'input-group-addon') do
            content_tag(:i, '', class: 'glyphicon glyphicon-calendar').html_safe
          end +
          text_field_tag(field_name, value, tag_options)
        end
      end

      def html_options
        super.tap do |html_options|
          if js_options[:format] == default_input_js[:format] # Unless someone changed from the default
            html_options[:pattern] = '\d{4}-\d{2}-\d{2} \d+:\d{2} [A-Z]{2}' # Match default pattern defined above
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
effective_form_inputs-0.6.3 app/models/inputs/effective_date_time_picker/input.rb
effective_form_inputs-0.6.2 app/models/inputs/effective_date_time_picker/input.rb
effective_form_inputs-0.6.1 app/models/inputs/effective_date_time_picker/input.rb
effective_form_inputs-0.6.0 app/models/inputs/effective_date_time_picker/input.rb