Class: TicketingHub::Client

Inherits:
Object
  • Object
show all
Includes:
Connection, Request
Defined in:
lib/ticketing_hub/client.rb

Instance Method Summary collapse

Methods included from Request

#delete, #get, #patch, #post, #put

Constructor Details

#initialize(options = {}) ⇒ Client

Returns a new instance of Client.



11
12
13
14
15
16
# File 'lib/ticketing_hub/client.rb', line 11

def initialize options={}
  options = TicketingHub.options.merge options
  Configuration::VALID_OPTIONS_KEYS.each do |key|
    send "#{key}=", options[key]
  end
end

Instance Method Details

#cancel_order(order_id) ⇒ Object



60
61
62
# File 'lib/ticketing_hub/client.rb', line 60

def cancel_order order_id
  delete "orders/#{_normalize_object_id order_id}"
end

#confirm_order(order_id, order_attributes = nil) ⇒ Object



68
69
70
71
# File 'lib/ticketing_hub/client.rb', line 68

def confirm_order order_id, order_attributes=nil
  update_order order_id, order_attributes if order_attributes
  post "orders/#{_normalize_object_id order_id}/confirm"
end

#create_order(order_attributes, venue_id = nil) ⇒ Object



55
56
57
58
# File 'lib/ticketing_hub/client.rb', line 55

def create_order order_attributes, venue_id=nil
  venue_id ||= venue(venue_id).id
  post "venues/#{venue_id}/orders", order_attributes
end

#customer_fields(order_id, ticket_id = nil) ⇒ Object



50
51
52
53
# File 'lib/ticketing_hub/client.rb', line 50

def customer_fields order_id, ticket_id=nil
  ticket_id.nil?? get("orders/#{_normalize_object_id order_id}/fields") :
    get("tickets/#{_normalize_object_id ticket_id}/fields")
end

#get_token(code) ⇒ Object



18
19
20
21
# File 'lib/ticketing_hub/client.rb', line 18

def get_token code
  post('token', grant_type: 'code', client_id: client_id,
    client_secret: client_secret, code: code, endpoint: oauth_endpoint)['access_token']
end

#order(order_id) ⇒ Object



36
37
38
# File 'lib/ticketing_hub/client.rb', line 36

def order order_id
  get "orders/#{_normalize_object_id order_id}"
end

#orders(venue_id = nil) ⇒ Object



31
32
33
34
# File 'lib/ticketing_hub/client.rb', line 31

def orders venue_id=nil
  venue_id ||= venue(venue_id).id
  get "venues/#{venue_id}/orders"
end

#seasons(venue_id = nil) ⇒ Object



45
46
47
48
# File 'lib/ticketing_hub/client.rb', line 45

def seasons venue_id=nil
  venue_id ||= venue(venue_id).id
  get "venues/#{venue_id}/seasons"
end

#tiers(date, time, venue_id = nil) ⇒ Object



40
41
42
43
# File 'lib/ticketing_hub/client.rb', line 40

def tiers date, time, venue_id=nil
  venue_id ||= venue(venue_id).id
  get "venues/#{venue_id}/tiers", { date: date, time: time }
end

#update_order(order_id, order_attributes) ⇒ Object



64
65
66
# File 'lib/ticketing_hub/client.rb', line 64

def update_order order_id, order_attributes
  patch "orders/#{_normalize_object_id order_id}", order_attributes
end

#userObject



27
28
29
# File 'lib/ticketing_hub/client.rb', line 27

def user
  get 'user'
end

#venue(id = nil) ⇒ Object



23
24
25
# File 'lib/ticketing_hub/client.rb', line 23

def venue id=nil
  id ? get("venues/#{id}") : get('venue')
end