Sha256: bf112feb54acc295bf10313d238151d40a84c1582f62bb784433a48044416a16
Contents?: true
Size: 1.26 KB
Versions: 1
Compression:
Stored size: 1.26 KB
Contents
# frozen_string_literal: true module Formtastic module Inputs # Outputs a series of select boxes for the fragments that make up a time (hour, minute, second). # Unless `:ignore_date` is true, it will render hidden inputs for the year, month and day as # well, defaulting to `Time.current` if the form object doesn't have a value, much like Rails' # own `time_select`. # # @see Formtastic::Inputs::Base::Timeish Timeish module for documentation of date, time and datetime input options. class TimeSelectInput include Base include Base::Timeish # we don't want year / month / day fragments if :ignore_date => true def fragments time_fragments end def value_or_default_value value ? value : Time.current end def fragment_value(fragment) value_or_default_value.send(fragment) end def hidden_fragments if !options[:ignore_date] date_fragments.map do |fragment| template.hidden_field_tag(hidden_field_name(fragment), fragment_value(fragment), :id => fragment_id(fragment), :disabled => input_html_options[:disabled] ) end.join.html_safe else super end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
formtastic-5.0.0 | lib/formtastic/inputs/time_select_input.rb |