Module: InputModeHelper
- Defined in:
- app/helpers/input_mode_helper.rb
Instance Method Summary collapse
- #validated_inputmode(record, attr) ⇒ String, NilClass
- #validated_step(record, attr) ⇒ Numeric, NilClass
Instance Method Details
#validated_inputmode(record, attr) ⇒ String, NilClass
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'app/helpers/input_mode_helper.rb', line 13 def validated_inputmode(record, attr) v_types = validators_for_attr(record, attr).map(&:kind).map(&:to_s) # TODO: try using pattern matching instead if v_types.include?("numericality") needs_integer?(record, attr) ? "numeric" : "decimal" elsif v_types.include?("email") "email" elsif v_types.include?("url") "url" elsif ["tel", "phone"].any? { |i| v_types.include?(i) } "tel" elsif ["search"].any? { |i| v_types.include?(i) } || attr.to_s.include?("search") "search" else "text" end end |
#validated_step(record, attr) ⇒ Numeric, NilClass
39 40 41 42 43 44 |
# File 'app/helpers/input_mode_helper.rb', line 39 def validated_step(record, attr) case validated_inputmode(record, attr) when "numeric" then 1 when "decimal" then 0.1 end end |