Sha256: 97b41dd6511904b0f256df04227408adbb6289219b6f2f69ccd0e1c7f95cd8d9

Contents?: true

Size: 941 Bytes

Versions: 6

Compression:

Stored size: 941 Bytes

Contents

module Loopiator
  module Models
    
    class Domain
      attr_accessor :paid, :unpaid_amount, :registered, :domain, :renewal_status, :expiration_date, :reference_number
      
      def initialize(hash)
        hash.symbolize_keys!
        
        self.paid               =   hash.fetch(:paid, 0).eql?(1)
        self.unpaid_amount      =   hash.fetch(:unpaid_amount, 0)
        self.registered         =   hash.fetch(:registered, 0).eql?(1)
        self.domain             =   hash.fetch(:domain, "")
        self.renewal_status     =   hash.fetch(:renewal_status, "")
        self.expiration_date    =   hash.fetch(:expiration_date, "")
        self.reference_number   =   hash.fetch(:reference_no, "").to_s
      end
      
      def paid?
        paid
      end
      
      def registered?
        registered
      end
      
      def needs_to_be_paid?
        (!paid? && unpaid_amount > 0)
      end
      
    end
    
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
loopiator-0.3.3 lib/loopiator/models/domain.rb
loopiator-0.3.2 lib/loopiator/models/domain.rb
loopiator-0.3.1 lib/loopiator/models/domain.rb
loopiator-0.3.0 lib/loopiator/models/domain.rb
loopiator-0.2.0 lib/loopiator/models/domain.rb
loopiator-0.1.0 lib/loopiator/models/domain.rb