Sha256: 5fcdb628c95da9ac6d47c301e9bd83170815da537e0f329f0225e7dd224280d7

Contents?: true

Size: 977 Bytes

Versions: 7

Compression:

Stored size: 977 Bytes

Contents

module Ecoportal
  module API
    class V2
      class Page
        class Component
          class DateField < Page::Component
            passthrough :value
            passthrough :show_time, :today_button, :past_only
            passthrough :create_event, :remind_me_in
            passthrough :renews, :renews_every, :renews_unit, :renews_until

            ISO8601 = "%Y-%m-%dT%H:%M:00Z" # "%Y-%m-%dT%H:%M:00.00Z"

            def value=(val)
              doc["value"] = self.class.to_time(val).yield_self do |datetime|
                datetime = datetime.utc.strftime(ISO8601) if datetime
                datetime
              end
            end

            def value
              if val = doc["value"]
                (Time.parse(val) rescue nil).yield_self do |datetime|
                  datetime.localtime if datetime
                end
              end
            end

          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
ecoportal-api-v2-0.8.8 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-v2-0.8.7 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-v2-0.8.6 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-v2-0.8.5 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-v2-0.8.4 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-oozes-0.7.5 lib/ecoportal/api/v2/page/component/date_field.rb
ecoportal-api-oozes-0.7.4 lib/ecoportal/api/v2/page/component/date_field.rb