Sha256: f2a9ebc79b6a2b10d6c9c55509973a6e98d19a34d60833793c0d68fa5bddd9c5

Contents?: true

Size: 849 Bytes

Versions: 2

Compression:

Stored size: 849 Bytes

Contents

module Hijri
  class DateTime < Date
    
    attr_reader :hour, :minute, :second, :zone
    def initialize(year=1, month=1, day=1, hour=0, minute=0, second=0, zone="00:00")
      super(year, month, day)
      @hour   = hour
      @minute = minute
      @second = second
      @zone   = zone
    end
    
    def change(kargs)
      @hour   = kargs.fetch :hour, hour
      @minute = kargs.fetch :minute, minute
      @second = kargs.fetch :second, second
      @zone   = kargs.fetch :zone, zone
    end
    
    def to_greo
      ::DateTime.new *Converter.hijri_to_greo(self)
    end
    
    # TODO to_s

    class << self
      def now
        datetime = ::DateTime.now
        hijri = datetime.to_hijri
        hijri.change :hour => datetime.hour, :minute => datetime.minute, :second => datetime.second
        hijri
      end
    end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hijri-0.2.5 lib/hijri/datetime.rb
hijri-0.2.0 lib/hijri/datetime.rb