Sha256: 1a0a3fde241406050cfd6fb556ba57e1c5778f1e89270fe5ef8dbe11e16f22dd

Contents?: true

Size: 788 Bytes

Versions: 11

Compression:

Stored size: 788 Bytes

Contents

require "time"

module Insulin
# Author::  Sam (mailto:sam@cruft.co)
# License:: MIT
  module OnTrack

    # OnTrack uses really shitty date formats, including embedding a comma in
    # the CSV export file. Christ on a crutch
    class Date < Hash

      # Parse the string 'd', looking for datetime information
      def initialize d
        t = Time.parse d

        # We extract loads of stuff. Might be useful one day
        self["timestamp"] = t
        self["tzoffset"] = t.strftime "%z"
        self["timezone"] = t.zone
        self["unixtime"] = t.to_i
        self["day"] = t.strftime("%A").downcase
        self["date"] = t.strftime "%F"
        self["time"] = t.strftime "%T #{self['timezone']}" 
        self["short_time"] = t.strftime "%H:%M" 
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
insulin-0.1.11 lib/insulin/on_track/date.rb
insulin-0.1.10 lib/insulin/on_track/date.rb
insulin-0.1.9 lib/insulin/on_track/date.rb
insulin-0.1.8 lib/insulin/on_track/date.rb
insulin-0.1.7 lib/insulin/on_track/date.rb
insulin-0.1.6 lib/insulin/on_track/date.rb
insulin-0.1.5 lib/insulin/on_track/date.rb
insulin-0.1.4 lib/insulin/on_track/date.rb
insulin-0.1.3 lib/insulin/on_track/date.rb
insulin-0.1.2 lib/insulin/on_track/date.rb
insulin-0.1.1 lib/insulin/on_track/date.rb