tickethub 0.3.56 → 0.3.57

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2faf725e33ff7442bfe95986bd0c2237660556a7
4
- data.tar.gz: 284bc2745dfaaf7d02f1c4b2c559d6d471355702
3
+ metadata.gz: 5d867dfedd1f4e9fe6de643c2603a868804a2f02
4
+ data.tar.gz: 4cf8c68da773f39c2f42b54102a7d02b4d54b3dc
5
5
  SHA512:
6
- metadata.gz: d3ea5294bfea89414c0873bde6b54a7faf9422b447ff470c32e874e850b113ad7903c86017682f29cd21145ab5eb7c6643c8407da26f69fc9817218434d21323
7
- data.tar.gz: 35518440f8471ea1966f7aee12f29f0f315b898b583d46fc73c541f6aea54aaa98445fde97a4af75f08195f5108aa586db991e9bd5d6b072e672b35194f94a7a
6
+ metadata.gz: ab57c6b750cd3caa1cbf42ab2b2ca2f5837ea0f7c2cad3090bc2868511a7e80581da0007775089f431e4582bf602bef2f615e46acf102bd7de16003827c809c1
7
+ data.tar.gz: b56aa2712da7649170f8bd2e29c84043b07cfb2e9b23c41653021148c6d1387faa64b3a8b001f2510b8c743f80254977aaf3a2aaf1bda0a6258aceca9c2f0bf2
data/lib/tickethub.rb CHANGED
@@ -24,6 +24,7 @@ module Tickethub
24
24
 
25
25
  require_relative 'tickethub/token'
26
26
  require_relative 'tickethub/supplier'
27
+ require_relative 'tickethub/channel'
27
28
  require_relative 'tickethub/reseller'
28
29
  require_relative 'tickethub/app'
29
30
  require_relative 'tickethub/user'
@@ -0,0 +1,52 @@
1
+ module Tickethub
2
+ class Channel < Resource
3
+ path '/channel', singleton: true
4
+
5
+ require_relative 'channel/voucher'
6
+ require_relative 'channel/coupon'
7
+ require_relative 'channel/tier'
8
+ require_relative 'channel/variant'
9
+ require_relative 'channel/extra'
10
+ require_relative 'channel/question'
11
+ require_relative 'channel/option'
12
+
13
+ require_relative 'channel/booking'
14
+ require_relative 'channel/order'
15
+ require_relative 'channel/payment'
16
+
17
+ require_relative 'channel/product'
18
+ require_relative 'channel/supplier'
19
+
20
+ collection :vouchers, Voucher
21
+ collection :coupons, Coupon
22
+ collection :tiers, Tier
23
+ collection :variants, Variant
24
+ collection :extras, Extra
25
+ collection :questions, Question
26
+ collection :options, Option
27
+
28
+ collection :products, Product
29
+ collection :bookings, Booking
30
+ collection :orders, Order
31
+ collection :payments, Payment
32
+
33
+ association :supplier, Supplier
34
+
35
+ def self.[](attributes)
36
+ token = attributes[:token].is_a?(String) ? attributes[:token]
37
+ : attributes[:token][:access_token]
38
+ self.call Tickethub.endpoint(auth_type: :bearer, password: token)[path]
39
+ end
40
+
41
+ def initialize(endpoint, attributes = nil)
42
+ attributes ||= endpoint.get
43
+
44
+ if attributes['token']
45
+ endpoint = Tickethub.endpoint(auth_type: :bearer,
46
+ password: attributes['token']['access_token'])[self.class.path]
47
+ end
48
+
49
+ super(endpoint, attributes)
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,11 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Answer < Resource
5
+ path '/channel/answers'
6
+
7
+ require_relative 'question'
8
+
9
+ association :question, Channel::Question
10
+ end
11
+ end
@@ -0,0 +1,38 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Booking < Resource
5
+ path '/channel/bookings'
6
+
7
+ require_relative 'booking/ticket'
8
+ require_relative 'booking/voucher'
9
+
10
+ require_relative 'order'
11
+ require_relative 'answer'
12
+ require_relative 'product'
13
+ require_relative 'variant'
14
+ require_relative 'purchase'
15
+ require_relative 'discount'
16
+ require_relative 'fee'
17
+ require_relative 'tier'
18
+
19
+ collection :answers, Channel::Answer
20
+ collection :purchases, Channel::Purchase
21
+ collection :fees, Channel::Fee
22
+ collection :tiers, Channel::Tier
23
+ collection :discounts, Channel::Discount
24
+
25
+ association :order, Channel::Order
26
+ association :product, Channel::Product
27
+ association :variant, Channel::Variant
28
+
29
+ attribute :amount, type: :money
30
+ attribute :discount, type: :money
31
+ attribute :tax, type: :money
32
+ attribute :total, type: :money
33
+
34
+ attribute :created_at, type: :datetime
35
+ attribute :updated_at, type: :datetime
36
+ attribute :cancelled_at, type: :datetime
37
+ end
38
+ end
@@ -0,0 +1,13 @@
1
+ require_relative '../booking'
2
+
3
+ module Tickethub
4
+ class Channel::Booking::Ticket < Channel::Booking
5
+ polymorphic 'ticket'
6
+
7
+ require_relative '../ticket'
8
+
9
+ collection :tickets, Channel::Ticket
10
+
11
+ attribute :valid_from, type: :datetime
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ require_relative '../booking'
2
+
3
+ module Tickethub
4
+ class Channel::Booking::Voucher < Channel::Booking
5
+ polymorphic 'voucher'
6
+
7
+ require_relative '../voucher'
8
+
9
+ collection :vouchers, Channel::Voucher
10
+
11
+ attribute :expires_on, type: :date
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Coupon < Resource
5
+ path '/channel/coupons'
6
+
7
+ require_relative 'booking'
8
+
9
+ collection :bookings, Channel::Booking
10
+
11
+ attribute :valid_from, type: :date
12
+ attribute :expires_on, type: :date
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Customer < Resource
5
+ path '/channel/customers'
6
+
7
+ require_relative '../address'
8
+
9
+ association :address, Tickethub::Address
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Discount < Resource
5
+ path '/channel/discounts'
6
+
7
+ attribute :amount, type: :money
8
+
9
+ attribute :created_at, type: :datetime
10
+ attribute :updated_at, type: :datetime
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Extra < Resource
5
+ path '/channel/extras'
6
+
7
+ attribute :price, type: :money
8
+
9
+ attribute :created_at, type: :datetime
10
+ attribute :updated_at, type: :datetime
11
+ end
12
+ end
@@ -0,0 +1,15 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Fee < Resource
5
+ path '/channel/fees'
6
+
7
+ require_relative 'tax'
8
+ require_relative 'booking'
9
+
10
+ association :tax, Channel::Tax
11
+ association :booking, Channel::Booking
12
+
13
+ attribute :amount, type: :money
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Option < Resource
5
+ path '/channel/options'
6
+
7
+ scope :dates, -> (params) { @endpoint[:dates].get(params).decoded }
8
+
9
+ attribute :date_time, type: :datetime
10
+
11
+ attribute :time, type: :time
12
+ attribute :total, type: :money
13
+ end
14
+ end
@@ -0,0 +1,38 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Order < Resource
5
+ path '/channel/orders'
6
+
7
+ require_relative 'customer'
8
+ require_relative 'booking'
9
+ require_relative 'payment'
10
+
11
+ require_relative 'customer'
12
+ require_relative 'session'
13
+
14
+ require_relative 'answer'
15
+ require_relative '../address'
16
+
17
+ collection :bookings, Channel::Booking
18
+ collection :payments, Channel::Payment
19
+ collection :answers, Channel::Answer
20
+
21
+ association :customer, Channel::Customer
22
+ association :session, Channel::Session
23
+ association :address, Tickethub::Address
24
+
25
+ attribute :total, type: :money
26
+ attribute :balance, type: :money
27
+ attribute :currency, type: :currency
28
+
29
+ attribute :expires_at, type: :datetime
30
+ attribute :confirmed_at, type: :datetime
31
+ attribute :created_at, type: :datetime
32
+ attribute :updated_at, type: :datetime
33
+
34
+ def confirm(params = {})
35
+ self.load @endpoint[:confirm].post(params)
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,27 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Payment < Resource
5
+ path '/channel/payments'
6
+
7
+ require_relative 'refund'
8
+
9
+ require_relative 'payment/paypal'
10
+ require_relative 'payment/stripe'
11
+
12
+ require_relative 'order'
13
+
14
+ association :order, Channel::Order
15
+
16
+ collection :refunds, Channel::Refund
17
+
18
+ attribute :amount, type: :money
19
+ attribute :refunded, type: :money
20
+ attribute :balance, type: :money
21
+ attribute :refunded_at, type: :datetime
22
+ attribute :confirmed_at, type: :datetime
23
+
24
+ attribute :created_at, type: :datetime
25
+ attribute :updated_at, type: :datetime
26
+ end
27
+ end
@@ -0,0 +1,8 @@
1
+ require_relative '../payment'
2
+
3
+ module Tickethub
4
+ class Channel::Payment::Paypal < Channel::Payment
5
+ path '/channel/payments/paypal'
6
+ polymorphic 'paypal'
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ require_relative '../payment'
2
+
3
+ module Tickethub
4
+ class Channel::Payment::Stripe < Channel::Payment
5
+ path '/channel/payments/stripe'
6
+ polymorphic 'stripe'
7
+ end
8
+ end
@@ -0,0 +1,35 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Product < Resource
5
+ path '/channel/products'
6
+
7
+ require_relative 'booking'
8
+ require_relative 'extra'
9
+ require_relative 'option'
10
+ require_relative 'tier'
11
+ require_relative 'variant'
12
+ require_relative 'question'
13
+ require_relative 'tax'
14
+
15
+ require_relative '../contact'
16
+ require_relative '../address'
17
+
18
+ association :contact, Tickethub::Contact
19
+ association :address, Tickethub::Address
20
+
21
+ collection :bookings, Channel::Booking
22
+ collection :extras, Channel::Extra
23
+ collection :options, Channel::Option
24
+ collection :tiers, Channel::Tier
25
+ collection :variants, Channel::Variant
26
+ collection :questions, Channel::Question
27
+ collection :taxes, Channel::Tax
28
+
29
+ attribute :time_zone, type: :timezone
30
+ attribute :currency, type: :currency
31
+
32
+ attribute :created_at, type: :datetime
33
+ attribute :updated_at, type: :datetime
34
+ end
35
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Purchase < Resource
5
+ path '/channel/purchases'
6
+
7
+ require_relative 'booking'
8
+ require_relative 'extra'
9
+
10
+ association :booking, Channel::Booking
11
+ association :extra, Channel::Extra
12
+
13
+ attribute :price, type: :money
14
+ attribute :total, type: :money
15
+
16
+ attribute :updated_at, type: :datetime
17
+ attribute :created_at, type: :datetime
18
+ end
19
+ end
@@ -0,0 +1,11 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Question < Resource
5
+ path '/channel/questions'
6
+
7
+ require_relative 'answer'
8
+
9
+ collection :answers, Channel::Answer
10
+ end
11
+ end
@@ -0,0 +1,16 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Refund < Resource
5
+ path '/channel/refunds'
6
+
7
+ require_relative 'payment'
8
+
9
+ association :payment, Channel::Payment
10
+
11
+ attribute :amount, type: :money
12
+
13
+ attribute :created_at, type: :datetime
14
+ attribute :updated_at, type: :datetime
15
+ end
16
+ end
@@ -0,0 +1,10 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Session < Resource
5
+ path '/channel/sessions'
6
+
7
+ attribute :updated_at, type: :datetime
8
+ attribute :created_at, type: :datetime
9
+ end
10
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Supplier < Resource
5
+ path '/channel/suppliers'
6
+
7
+ require_relative '../contact'
8
+ require_relative '../address'
9
+
10
+ association :contact, Tickethub::Contact
11
+ association :address, Tickethub::Address
12
+
13
+ attribute :time_zone, type: :timezone
14
+ attribute :currency, type: :currency
15
+
16
+ attribute :created_at, type: :datetime
17
+ attribute :updated_at, type: :datetime
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Tax < Resource
5
+ path '/channel/taxes'
6
+
7
+ require_relative 'fee'
8
+
9
+ collection :fees, Channel::Fee
10
+
11
+ attribute :updated_at, type: :datetime
12
+ attribute :created_at, type: :datetime
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Ticket < Resource
5
+ path '/channel/tickets'
6
+
7
+ require_relative 'booking'
8
+ require_relative 'tier'
9
+ require_relative 'voucher'
10
+
11
+ association :booking, Channel::Booking
12
+ association :tier, Channel::Tier
13
+ association :voucher, Channel::Voucher
14
+
15
+ attribute :price, type: :money
16
+ attribute :interval, type: :duration
17
+
18
+ attribute :last_scan_at, type: :datetime
19
+ attribute :expires_at, type: :datetime
20
+ attribute :updated_at, type: :datetime
21
+ attribute :created_at, type: :datetime
22
+ end
23
+ end
@@ -0,0 +1,15 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Tier < Resource
5
+ path '/channel/tiers'
6
+
7
+ attribute :price, type: :money
8
+
9
+ attribute :notice, type: :duration
10
+ attribute :period, type: :duration
11
+
12
+ attribute :interval, type: :duration
13
+ attribute :duration, type: :duration
14
+ end
15
+ end
@@ -0,0 +1,7 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Variant < Resource
5
+ path '/channel/variants'
6
+ end
7
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../resource'
2
+
3
+ module Tickethub
4
+ class Channel::Voucher < Resource
5
+ path '/channel/vouchers'
6
+
7
+ require_relative 'tier'
8
+ require_relative 'booking'
9
+
10
+ association :tier, Channel::Tier
11
+ association :booking, Channel::Booking
12
+
13
+ attribute :price, type: :money
14
+ attribute :total, type: :money
15
+
16
+ attribute :created_at, type: :datetime
17
+ attribute :updated_at, type: :datetime
18
+ end
19
+ end
@@ -27,7 +27,6 @@ module Tickethub
27
27
  require_relative 'supplier/charge'
28
28
  require_relative 'supplier/import'
29
29
  require_relative 'supplier/broadcast'
30
- require_relative 'supplier/widget'
31
30
  require_relative 'supplier/transfer'
32
31
  require_relative 'supplier/channel'
33
32
  require_relative 'supplier/discount'
@@ -63,7 +62,6 @@ module Tickethub
63
62
  collection :charges, Charge
64
63
  collection :imports, Import
65
64
  collection :broadcasts, Broadcast
66
- collection :widgets, Widget
67
65
  collection :transfers, Transfer
68
66
  collection :channels, Channel
69
67
  collection :discounts, Discount
@@ -11,7 +11,6 @@ module Tickethub
11
11
 
12
12
  require_relative 'booking'
13
13
  require_relative 'voucher'
14
- require_relative 'channel'
15
14
  require_relative 'ticket'
16
15
  require_relative 'extra'
17
16
  require_relative 'fee'
@@ -25,13 +24,12 @@ module Tickethub
25
24
  require_relative 'question'
26
25
  require_relative 'answer'
27
26
  require_relative 'tax'
27
+ require_relative 'channel'
28
28
  require_relative 'scan'
29
- require_relative 'widget'
30
29
  require_relative 'import'
31
30
 
32
31
  collection :bookings, Supplier::Booking
33
32
  collection :vouchers, Supplier::Voucher
34
- collection :channels, Supplier::Channel
35
33
  collection :tickets, Supplier::Ticket
36
34
  collection :extras, Supplier::Extra
37
35
  collection :fees, Supplier::Fee
@@ -44,7 +42,7 @@ module Tickethub
44
42
  collection :answers, Supplier::Answer
45
43
  collection :taxes, Supplier::Tax
46
44
  collection :scans, Supplier::Scan
47
- collection :widgets, Supplier::Widget
45
+ collection :channels, Supplier::Channel
48
46
  collection :imports, Supplier::Import
49
47
 
50
48
  collection :options, Supplier::Option do
@@ -4,10 +4,6 @@ module Tickethub
4
4
  class Supplier::Session < Resource
5
5
  path '/supplier/sessions'
6
6
 
7
- require_relative 'widget'
8
-
9
- association :widget, Supplier::Widget
10
-
11
7
  attribute :updated_at, type: :datetime
12
8
  attribute :created_at, type: :datetime
13
9
  end
@@ -1,3 +1,3 @@
1
1
  module Tickethub
2
- VERSION = '0.3.56'
2
+ VERSION = '0.3.57'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tickethub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.56
4
+ version: 0.3.57
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oliver Morgan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-04 00:00:00.000000000 Z
11
+ date: 2015-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,6 +94,32 @@ files:
94
94
  - lib/tickethub/app.rb
95
95
  - lib/tickethub/app/category.rb
96
96
  - lib/tickethub/app/subscription.rb
97
+ - lib/tickethub/channel.rb
98
+ - lib/tickethub/channel/answer.rb
99
+ - lib/tickethub/channel/booking.rb
100
+ - lib/tickethub/channel/booking/ticket.rb
101
+ - lib/tickethub/channel/booking/voucher.rb
102
+ - lib/tickethub/channel/coupon.rb
103
+ - lib/tickethub/channel/customer.rb
104
+ - lib/tickethub/channel/discount.rb
105
+ - lib/tickethub/channel/extra.rb
106
+ - lib/tickethub/channel/fee.rb
107
+ - lib/tickethub/channel/option.rb
108
+ - lib/tickethub/channel/order.rb
109
+ - lib/tickethub/channel/payment.rb
110
+ - lib/tickethub/channel/payment/paypal.rb
111
+ - lib/tickethub/channel/payment/stripe.rb
112
+ - lib/tickethub/channel/product.rb
113
+ - lib/tickethub/channel/purchase.rb
114
+ - lib/tickethub/channel/question.rb
115
+ - lib/tickethub/channel/refund.rb
116
+ - lib/tickethub/channel/session.rb
117
+ - lib/tickethub/channel/supplier.rb
118
+ - lib/tickethub/channel/tax.rb
119
+ - lib/tickethub/channel/ticket.rb
120
+ - lib/tickethub/channel/tier.rb
121
+ - lib/tickethub/channel/variant.rb
122
+ - lib/tickethub/channel/voucher.rb
97
123
  - lib/tickethub/collection.rb
98
124
  - lib/tickethub/connection.rb
99
125
  - lib/tickethub/contact.rb
@@ -196,7 +222,6 @@ files:
196
222
  - lib/tickethub/supplier/user.rb
197
223
  - lib/tickethub/supplier/variant.rb
198
224
  - lib/tickethub/supplier/voucher.rb
199
- - lib/tickethub/supplier/widget.rb
200
225
  - lib/tickethub/token.rb
201
226
  - lib/tickethub/user.rb
202
227
  - lib/tickethub/user/app.rb
@@ -1,19 +0,0 @@
1
- require_relative '../resource'
2
-
3
- module Tickethub
4
- class Supplier::Widget < Resource
5
- path '/supplier/widgets'
6
-
7
- require_relative 'session'
8
- require_relative 'product'
9
- require_relative 'rate'
10
-
11
- association :product, Supplier::Product
12
- association :rate, Supplier::Rate
13
-
14
- collection :sessions, Supplier::Session
15
-
16
- attribute :updated_at, type: :datetime
17
- attribute :created_at, type: :datetime
18
- end
19
- end