seatsio 22 → 23

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
  SHA256:
3
- metadata.gz: ec1d4c214dfcab163284ddb2d393ec973be88caaca8d597225125d657b24b037
4
- data.tar.gz: 16d74ad7f467a299e1a9178c778fc82cc58d7a8256da1f64ee8caaa38acdc766
3
+ metadata.gz: b88d6d19b2c22781400c6ae47b2b56ad427ac9bad5c8ec5a3c6bff74ee51b669
4
+ data.tar.gz: 11bf8b67f7fee295ee84353f2d949b4394f74c503f62ad390629f4911d441e19
5
5
  SHA512:
6
- metadata.gz: 8cce5386a6d962c113a0a7d3899e2978422635be1631a89d5ac45bdc79f116386beafa504744a1cfde8be1eb08710d28cebe195ebe021e1268fa7ef8a74feb1a
7
- data.tar.gz: e249ddad6f59c000c8e9304df61d157f89250d6ced614520694c14ad9e97c0670a92f7934a5afbfeff8d8d990bf454e594a1e9d51f35e8e4cd19149eb34f39c5
6
+ metadata.gz: 58861f8258b3054132b3cd5e9a58689a1f484da363da9a006c35829c59e21dd454bb3b284aa114c4b015158e2673d28a68f949f82905184d7e8adeda44a43839
7
+ data.tar.gz: 72b0cd80783a6ae96f5d029246fb602ed8e06390a98a301b78b87998ea076db2357b6466692d42573949aafd68a17e7494947189190e4eb5e5d100530f78a9c9
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- seatsio (22)
4
+ seatsio (23)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/lib/seatsio.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  require 'seatsio/version'
2
2
  require 'seatsio/charts'
3
- require 'seatsio/accounts'
4
3
  require 'seatsio/subaccounts'
5
4
  require 'seatsio/workspaces'
6
5
  require 'seatsio/events'
@@ -12,12 +11,11 @@ require 'seatsio/usage_reports'
12
11
  module Seatsio
13
12
  # Main Seatsio Class
14
13
  class Client
15
- attr_reader :charts, :accounts, :subaccounts, :workspaces, :events,
14
+ attr_reader :charts, :subaccounts, :workspaces, :events,
16
15
  :hold_tokens, :chart_reports, :event_reports, :usage_reports
17
16
 
18
17
  def initialize(secret_key, workspace_key = nil, base_url = 'https://api.seatsio.net')
19
18
  @charts = ChartsClient.new(secret_key, workspace_key, base_url)
20
- @accounts = AccountsClient.new(secret_key, workspace_key, base_url)
21
19
  @subaccounts = SubaccountsClient.new(secret_key, workspace_key, base_url)
22
20
  @workspaces = WorkspacesClient.new(secret_key, base_url)
23
21
  @events = EventsClient.new(secret_key, workspace_key, base_url)
@@ -118,48 +118,16 @@ module Seatsio::Domain
118
118
  end
119
119
  end
120
120
 
121
- class ChartValidationSettings
122
- attr_reader :validate_duplicate_labels, :validate_objects_without_categories,
123
- :validate_unlabeled_objects
124
-
125
- def initialize(data)
126
- @validate_duplicate_labels = data['VALIDATE_DUPLICATE_LABELS']
127
- @validate_objects_without_categories = data['VALIDATE_OBJECTS_WITHOUT_CATEGORIES']
128
- @validate_unlabeled_objects = data['VALIDATE_UNLABELED_OBJECTS']
129
- end
130
- end
131
-
132
- class AccountSettings
133
- attr_reader :draft_chart_drawings_enabled, :hold_on_select_for_gas, :chart_validation
134
-
135
- def initialize(data)
136
- @draft_chart_drawings_enabled = data['draftChartDrawingsEnabled']
137
- @hold_on_select_for_gas = data['holdOnSelectForGAs']
138
- @chart_validation = ChartValidationSettings.new(data['chartValidation'])
139
- end
140
- end
141
-
142
- class Account
143
- attr_reader :id, :secret_key, :designer_key, :name,
144
- :email, :active, :settings
121
+ class Subaccount
122
+ attr_reader :id, :secret_key, :designer_key, :public_key, :name, :active
145
123
 
146
124
  def initialize(data)
147
125
  @id = data['id']
126
+ @public_key = data['publicKey']
148
127
  @secret_key = data['secretKey']
149
128
  @designer_key = data['designerKey']
150
129
  @name = data['name']
151
- @email = data['email']
152
130
  @active = data['active']
153
- @settings = AccountSettings.new(data['settings']) if data['settings'] != nil
154
- end
155
- end
156
-
157
- class Subaccount < Account
158
- attr_reader :public_key, :workspace
159
-
160
- def initialize(data)
161
- super
162
- @public_key = data['publicKey']
163
131
  end
164
132
  end
165
133
 
@@ -203,6 +171,15 @@ module Seatsio::Domain
203
171
  end
204
172
  end
205
173
 
174
+ class ChangeObjectStatusInBatchResult
175
+
176
+ attr_reader :results
177
+
178
+ def initialize(data)
179
+ @results = data['results'].map { |r| ChangeObjectStatusResult.new(r) }
180
+ end
181
+ end
182
+
206
183
  class HoldToken
207
184
 
208
185
  attr_reader :hold_token, :expires_at, :expires_in_seconds, :workspace_key
@@ -338,7 +315,7 @@ module Seatsio::Domain
338
315
 
339
316
  def initialize(data)
340
317
  @subaccount = data['subaccount'] ? UsageSubaccount.new(data['subaccount']) : nil
341
- @usage_by_chart = data['usageByChart'].map {|usage| UsageByChart.new(usage)}
318
+ @usage_by_chart = data['usageByChart'].map { |usage| UsageByChart.new(usage) }
342
319
  end
343
320
  end
344
321
 
@@ -356,8 +333,8 @@ module Seatsio::Domain
356
333
  attr_reader :chart, :usage_by_event
357
334
 
358
335
  def initialize(data)
359
- @chart = data['chart'] ? UsageChart.new(data['chart']) : nil
360
- @usage_by_event = data['usageByEvent'].map {|usage| UsageByEvent.new(usage)}
336
+ @chart = data['chart'] ? UsageChart.new(data['chart']) : nil
337
+ @usage_by_event = data['usageByEvent'].map { |usage| UsageByEvent.new(usage) }
361
338
  end
362
339
  end
363
340
 
@@ -59,12 +59,21 @@ module Seatsio
59
59
  def change_object_status(event_key_or_keys, object_or_objects, status, hold_token = nil, order_id = nil, keep_extra_data = nil)
60
60
  request = create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data)
61
61
  request[:params] = {
62
- 'expand' => 'objects'
62
+ :expand => 'objects'
63
63
  }
64
64
  response = @http_client.post("seasons/actions/change-object-status", request)
65
65
  Domain::ChangeObjectStatusResult.new(response)
66
66
  end
67
67
 
68
+ def change_object_status_in_batch(status_change_requests)
69
+ request = {
70
+ :statusChanges => status_change_requests,
71
+ :params => { :expand => 'objects' }
72
+ }
73
+ response = @http_client.post("events/actions/change-object-status", request)
74
+ Domain::ChangeObjectStatusInBatchResult.new(response).results
75
+ end
76
+
68
77
  def hold(event_key_or_keys, object_or_objects, hold_token, order_id = nil, keep_extra_data = nil)
69
78
  change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::HELD, hold_token, order_id, keep_extra_data)
70
79
  end
@@ -0,0 +1,6 @@
1
+ def create_change_object_status_jn_batch_request(event_key, object_or_objects, status, hold_token = nil , order_id = nil, keep_extra_data = nil)
2
+ result = create_change_object_status_request(object_or_objects, status, hold_token, order_id, '', keep_extra_data)
3
+ result.delete(:events)
4
+ result[:event] = event_key
5
+ result
6
+ end
@@ -1,3 +1,3 @@
1
1
  module Seatsio
2
- VERSION = "22"
2
+ VERSION = "23"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seatsio
3
3
  version: !ruby/object:Gem::Version
4
- version: '22'
4
+ version: '23'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seats.io
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-02-28 00:00:00.000000000 Z
11
+ date: 2020-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -109,13 +109,13 @@ files:
109
109
  - bin/console
110
110
  - bin/setup
111
111
  - lib/seatsio.rb
112
- - lib/seatsio/accounts.rb
113
112
  - lib/seatsio/chart_reports.rb
114
113
  - lib/seatsio/charts.rb
115
114
  - lib/seatsio/domain.rb
116
115
  - lib/seatsio/event_reports.rb
117
116
  - lib/seatsio/events.rb
118
117
  - lib/seatsio/events/change_best_available_object_status_request.rb
118
+ - lib/seatsio/events/change_object_status_in_batch_request.rb
119
119
  - lib/seatsio/events/change_object_status_request.rb
120
120
  - lib/seatsio/exception.rb
121
121
  - lib/seatsio/hold_tokens.rb
@@ -1,20 +0,0 @@
1
- require "seatsio/exception"
2
- require "base64"
3
- require "seatsio/httpClient"
4
- require "seatsio/domain"
5
- require "json"
6
- require "cgi"
7
- require "seatsio/domain"
8
-
9
- module Seatsio
10
- class AccountsClient
11
- def initialize(secret_key, workspace_key, base_url)
12
- @http_client = ::Seatsio::HttpClient.new(secret_key, workspace_key, base_url)
13
- end
14
-
15
- def retrieve_my_account
16
- response = @http_client.get('accounts/me')
17
- Domain::Account.new(response)
18
- end
19
- end
20
- end