Sha256: 36c3a00d02e925c91d04630199e6cb71c86b3a9ebd7e5635d344ebdbadf70fa9

Contents?: true

Size: 777 Bytes

Versions: 180

Compression:

Stored size: 777 Bytes

Contents

module Avo
  module Fields
    class TimeField < DateTimeField
      attr_reader :format
      attr_reader :picker_format

      def initialize(id, **args, &block)
        super(id, **args, &block)

        add_string_prop args, :picker_format, "H:i:S"
        add_string_prop args, :format, "TT"
      end

      def formatted_value
        return nil if value.nil?

        value.utc.to_time.iso8601
      end

      def edit_formatted_value
        return nil if value.nil?

        value.utc.iso8601
      end

      def fill_field(model, key, value, params)
        if value.in?(["", nil])
          model[id] = value

          return model
        end

        return model if value.blank?

        model[id] = utc_time(value)

        model
      end
    end
  end
end

Version data entries

180 entries across 180 versions & 1 rubygems

Version Path
avo-2.53.0 lib/avo/fields/time_field.rb
avo-2.52.0 lib/avo/fields/time_field.rb
avo-3.10.7 lib/avo/fields/time_field.rb
avo-3.10.6 lib/avo/fields/time_field.rb
avo-3.10.5 lib/avo/fields/time_field.rb
avo-3.10.4 lib/avo/fields/time_field.rb
avo-3.10.3 lib/avo/fields/time_field.rb
avo-3.10.2 lib/avo/fields/time_field.rb
avo-3.10.1 lib/avo/fields/time_field.rb
avo-3.10.0 lib/avo/fields/time_field.rb
avo-3.9.2 lib/avo/fields/time_field.rb
avo-3.9.1 lib/avo/fields/time_field.rb
avo-3.8.2 lib/avo/fields/time_field.rb
avo-3.9.0 lib/avo/fields/time_field.rb
avo-3.8.1 lib/avo/fields/time_field.rb
avo-3.8.0 lib/avo/fields/time_field.rb
avo-3.6.4 lib/avo/fields/time_field.rb
avo-3.6.3 lib/avo/fields/time_field.rb
avo-3.6.2 lib/avo/fields/time_field.rb
avo-2.49.0 lib/avo/fields/time_field.rb