Sha256: 80fd7dc6bd725b684e59d3ef934529ae7a9e1d0b8620c9cdbc195af5fd5ba587

Contents?: true

Size: 1.76 KB

Versions: 13

Compression:

Stored size: 1.76 KB

Contents

require 'date'
require_relative '../resource'
require_relative '../collection'

module Tickethub
  class Supplier::Product < Resource
    path '/supplier/products'

    require_relative '../contact'
    require_relative '../address'

    require_relative 'booking'
    require_relative 'voucher'
    require_relative 'ticket'
    require_relative 'option'
    require_relative 'tier'
    require_relative 'variant'
    require_relative 'season'
    require_relative 'rate'
    require_relative 'coupon'
    require_relative 'reseller'
    require_relative 'question'
    require_relative 'answer'
    require_relative 'tax'
    require_relative 'scan'
    require_relative 'import'

    collection :bookings, Supplier::Booking
    collection :vouchers, Supplier::Voucher
    collection :tickets, Supplier::Ticket
    collection :tiers, Supplier::Tier
    collection :variants, Supplier::Variant
    collection :seasons, Supplier::Season
    collection :coupons, Supplier::Coupon
    collection :rates, Supplier::Rate
    collection :questions, Supplier::Question
    collection :answers, Supplier::Answer
    collection :taxes, Supplier::Tax
    collection :scans, Supplier::Scan
    collection :imports, Supplier::Import

    collection :options, Supplier::Option do
      def dates(from, to, booking = {})
        @endpoint[:dates].get(from: from, to: to, booking: booking).decoded
      end
    end

    association :contact, Tickethub::Contact
    association :address, Tickethub::Address

    attribute :time_zone, type: :timezone
    attribute :currency, type: :currency

    attribute :created_at, type: :datetime
    attribute :updated_at, type: :datetime

    def resellers
      Collection.new @endpoint['/supplier/resellers'], Supplier::Reseller, filters: { products: [id] }
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
tickethub-0.3.12 lib/tickethub/supplier/product.rb
tickethub-0.3.11 lib/tickethub/supplier/product.rb
tickethub-0.3.9 lib/tickethub/supplier/product.rb
tickethub-0.3.7 lib/tickethub/supplier/product.rb
tickethub-0.3.6 lib/tickethub/supplier/product.rb
tickethub-0.3.4 lib/tickethub/supplier/product.rb
tickethub-0.3.3 lib/tickethub/supplier/product.rb
tickethub-0.3.2 lib/tickethub/supplier/product.rb
tickethub-0.3.1 lib/tickethub/supplier/product.rb
tickethub-0.3.0 lib/tickethub/supplier/product.rb
tickethub-0.2.18 lib/tickethub/supplier/product.rb
tickethub-0.2.17 lib/tickethub/supplier/product.rb
tickethub-0.2.15 lib/tickethub/supplier/product.rb