tessitura_rest 1.1.6 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.codeclimate.yml +1 -1
- data/.rubocop.yml +23 -7
- data/.travis.yml +1 -1
- data/lib/tessitura_rest/crm/accounts.rb +4 -3
- data/lib/tessitura_rest/crm/actions.rb +16 -18
- data/lib/tessitura_rest/crm/addresses.rb +79 -80
- data/lib/tessitura_rest/crm/attributes.rb +9 -10
- data/lib/tessitura_rest/crm/constituencies.rb +8 -9
- data/lib/tessitura_rest/crm/constituents.rb +72 -75
- data/lib/tessitura_rest/crm/issues.rb +21 -23
- data/lib/tessitura_rest/crm/phones.rb +12 -13
- data/lib/tessitura_rest/crm/web_logins.rb +2 -4
- data/lib/tessitura_rest/custom/email.rb +15 -15
- data/lib/tessitura_rest/custom/local_procedure.rb +2 -2
- data/lib/tessitura_rest/diagnostics/diagnostics.rb +2 -2
- data/lib/tessitura_rest/finance/appeals.rb +1 -2
- data/lib/tessitura_rest/finance/gift_certificates.rb +1 -2
- data/lib/tessitura_rest/reference_data/countries.rb +2 -3
- data/lib/tessitura_rest/reference_data/sections.rb +1 -2
- data/lib/tessitura_rest/reference_data/states.rb +2 -3
- data/lib/tessitura_rest/security/security_user_groups.rb +2 -3
- data/lib/tessitura_rest/txn/orders.rb +8 -11
- data/lib/tessitura_rest/txn/package.rb +11 -11
- data/lib/tessitura_rest/txn/payments.rb +1 -1
- data/lib/tessitura_rest/txn/performance_extension.rb +15 -14
- data/lib/tessitura_rest/txn/performance_package_mode_of_sales.rb +2 -4
- data/lib/tessitura_rest/txn/price_types.rb +2 -4
- data/lib/tessitura_rest/txn/product_keywords.rb +1 -3
- data/lib/tessitura_rest/txn/production_extension.rb +2 -3
- data/lib/tessitura_rest/txn/production_season.rb +3 -5
- data/lib/tessitura_rest/txn/sub_line_items.rb +4 -4
- data/lib/tessitura_rest/txn/web_contents.rb +1 -3
- data/lib/tessitura_rest/version.rb +1 -1
- data/lib/tessitura_rest/web/cart.rb +141 -143
- data/lib/tessitura_rest/web/login.rb +26 -13
- data/lib/tessitura_rest/web/payment_plan_extension.rb +18 -19
- data/lib/tessitura_rest/web/registration.rb +34 -36
- data/lib/tessitura_rest/web/session.rb +37 -38
- data/lib/tessitura_rest.rb +1 -2
- data/tessitura_rest.gemspec +17 -15
- metadata +19 -19
@@ -1,301 +1,299 @@
|
|
1
1
|
module Cart
|
2
|
-
|
3
|
-
def get_cart(session_key, options={})
|
2
|
+
def get_cart(session_key, options = {})
|
4
3
|
options.merge!(basic_auth: @auth, headers: @headers)
|
5
4
|
self.class.get(base_api_endpoint("Web/Cart/#{session_key}?messageTypes=-11"), options)
|
6
5
|
end
|
7
6
|
|
8
|
-
def get_checkout_complete(session_key, options={})
|
7
|
+
def get_checkout_complete(session_key, options = {})
|
9
8
|
options.merge!(basic_auth: @auth, headers: @headers)
|
10
9
|
self.class.get(base_api_endpoint("Web/Cart/#{session_key}&savedCart=true"), options)
|
11
10
|
end
|
12
11
|
|
13
|
-
def empty_cart(session_key, options={})
|
12
|
+
def empty_cart(session_key, options = {})
|
14
13
|
options.merge!(basic_auth: @auth, headers: @headers)
|
15
14
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}"), options)
|
16
15
|
end
|
17
16
|
|
18
|
-
def change_mode_of_sale(session_key, code, options={})
|
17
|
+
def change_mode_of_sale(session_key, code, options = {})
|
19
18
|
parameters =
|
20
|
-
|
21
|
-
|
22
|
-
|
19
|
+
{
|
20
|
+
'ModeOfSaleId': code,
|
21
|
+
}
|
23
22
|
options.merge!(basic_auth: @auth, headers: @headers)
|
24
23
|
options.merge!(:body => parameters)
|
25
24
|
self.class.put(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
|
26
25
|
end
|
27
26
|
|
28
|
-
def add_gift_certificate(session_key, amount, name, notes, gift_certificate_type, options={})
|
27
|
+
def add_gift_certificate(session_key, amount, name, notes, gift_certificate_type, options = {})
|
29
28
|
parameters =
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
29
|
+
{
|
30
|
+
'Amount': amount,
|
31
|
+
'PaymentMethodId': gift_certificate_type,
|
32
|
+
'Notes': notes,
|
33
|
+
'Name': name,
|
34
|
+
}
|
36
35
|
options.merge!(basic_auth: @auth, headers: @headers)
|
37
36
|
options.merge!(:body => parameters)
|
38
37
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/GiftCertificates"), options)
|
39
38
|
end
|
40
39
|
|
41
|
-
def remove_gift_certificate(session_key, gift_certificate_number, options={})
|
40
|
+
def remove_gift_certificate(session_key, gift_certificate_number, options = {})
|
42
41
|
options.merge!(basic_auth: @auth, headers: @headers)
|
43
42
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/GiftCertificates/#{gift_certificate_number}"), options)
|
44
43
|
end
|
45
44
|
|
46
|
-
def apply_gift_certificate(session_key, gift_certificate_number, amount, options={})
|
45
|
+
def apply_gift_certificate(session_key, gift_certificate_number, amount, options = {})
|
47
46
|
parameters =
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
47
|
+
{
|
48
|
+
'Amount': amount,
|
49
|
+
'GiftCertificateNumber': gift_certificate_number,
|
50
|
+
}
|
52
51
|
options.merge!(basic_auth: @auth, headers: @headers)
|
53
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
52
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
54
53
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Payments/GiftCertificate"), options)
|
55
54
|
end
|
56
55
|
|
57
|
-
def un_apply_gift_certificate(session_key, gift_certificate_number, options={})
|
56
|
+
def un_apply_gift_certificate(session_key, gift_certificate_number, options = {})
|
58
57
|
options.merge!(basic_auth: @auth, headers: @headers)
|
59
58
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Payments/GiftCertificate/#{gift_certificate_number}"), options)
|
60
59
|
end
|
61
60
|
|
62
|
-
def add_contribution(session_key, amount, fund, membership_level, renew=nil, upgrade=nil, options={})
|
61
|
+
def add_contribution(session_key, amount, fund, membership_level, renew = nil, upgrade = nil, options = {})
|
63
62
|
parameters =
|
64
|
-
|
63
|
+
{
|
65
64
|
'Amount': amount,
|
66
65
|
'FundId': fund,
|
67
66
|
'Upgrade': upgrade,
|
68
67
|
'Renew': renew,
|
69
|
-
'MembershipLevelId': membership_level
|
70
|
-
|
68
|
+
'MembershipLevelId': membership_level,
|
69
|
+
}
|
71
70
|
options.merge!(basic_auth: @auth, headers: @headers)
|
72
71
|
options.merge!(:body => parameters)
|
73
72
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Contributions"), options)
|
74
73
|
end
|
75
74
|
|
76
|
-
def remove_contribution(session_key, line_item_id, options={})
|
75
|
+
def remove_contribution(session_key, line_item_id, options = {})
|
77
76
|
options.merge!(basic_auth: @auth, headers: @headers)
|
78
77
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Contributions/#{line_item_id}"), options)
|
79
78
|
end
|
80
79
|
|
81
|
-
def add_on_account(session_key, amount, payment_method_id, options={})
|
80
|
+
def add_on_account(session_key, amount, payment_method_id, options = {})
|
82
81
|
parameters =
|
83
|
-
|
82
|
+
{
|
84
83
|
'Amount': amount,
|
85
|
-
|
86
|
-
|
84
|
+
'PaymentMethodId': payment_method_id,
|
85
|
+
}
|
87
86
|
options.merge!(basic_auth: @auth, headers: @headers)
|
88
87
|
options.merge!(:body => parameters)
|
89
88
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/OnAccount"), options)
|
90
89
|
end
|
91
90
|
|
92
|
-
def apply_on_account(session_key, amount, payment_method_id, options={})
|
91
|
+
def apply_on_account(session_key, amount, payment_method_id, options = {})
|
93
92
|
parameters =
|
94
93
|
{
|
95
94
|
'Amount': amount,
|
96
|
-
|
95
|
+
'PaymentMethodId': payment_method_id,
|
97
96
|
}
|
98
97
|
options.merge!(basic_auth: @auth, headers: @headers)
|
99
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
98
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
100
99
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Payments/OnAccount"), options)
|
101
100
|
end
|
102
101
|
|
103
|
-
def remove_on_account(session_key, payment_id, options={})
|
102
|
+
def remove_on_account(session_key, payment_id, options = {})
|
104
103
|
options.merge!(basic_auth: @auth, headers: @headers)
|
105
104
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/OnAccount/#{payment_id}"), options)
|
106
105
|
end
|
107
106
|
|
108
|
-
def get_properties(session_key, options={})
|
107
|
+
def get_properties(session_key, options = {})
|
109
108
|
options.merge!(basic_auth: @auth, headers: @headers)
|
110
109
|
self.class.get(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
|
111
110
|
end
|
112
111
|
|
113
|
-
def update_properties(session_key, get_properties_response, options={})
|
112
|
+
def update_properties(session_key, get_properties_response, options = {})
|
114
113
|
options.merge!(basic_auth: @auth, headers: @headers)
|
115
114
|
options.merge!(:body => get_properties_response)
|
116
115
|
self.class.put(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
|
117
116
|
end
|
118
117
|
|
119
|
-
def add_order_comment(session_key, notes, solicitor='webapi', options={})
|
118
|
+
def add_order_comment(session_key, notes, solicitor = 'webapi', options = {})
|
120
119
|
options.merge!(basic_auth: @auth, headers: @headers)
|
121
120
|
parameters =
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
121
|
+
{
|
122
|
+
'Solicitor': solicitor,
|
123
|
+
'Notes': notes,
|
124
|
+
}
|
126
125
|
options.merge!(:body => parameters)
|
127
126
|
self.class.put(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
|
128
127
|
end
|
129
128
|
|
130
|
-
def reserve_tickets(session_key, number_of_seats, perf_id, price_type, zone_id, unseated, requested_seats=nil, special_requests=nil, options={})
|
129
|
+
def reserve_tickets(session_key, number_of_seats, perf_id, price_type, zone_id, unseated, requested_seats = nil, special_requests = nil, options = {})
|
131
130
|
parameters =
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
131
|
+
{
|
132
|
+
'PriceType': price_type,
|
133
|
+
'PerformanceId': perf_id,
|
134
|
+
'NumberOfSeats': number_of_seats,
|
135
|
+
'ZoneId': zone_id,
|
136
|
+
'SpecialRequests': special_requests,
|
137
|
+
'Unseated': unseated,
|
138
|
+
'RequestedSeats': requested_seats,
|
139
|
+
}
|
141
140
|
options.merge!(basic_auth: @auth, headers: @headers)
|
142
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
141
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
143
142
|
self.class.post(base_api_endpoint("/Web/Cart/#{session_key}/Tickets"), options)
|
144
143
|
end
|
145
144
|
|
146
|
-
def return_tickets(session_key, return_or_donate, id, options={})
|
145
|
+
def return_tickets(session_key, return_or_donate, id, options = {})
|
147
146
|
parameters =
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
147
|
+
{
|
148
|
+
'TicketNumber': id,
|
149
|
+
'ReturnOrDonate': return_or_donate,
|
150
|
+
}
|
152
151
|
options.merge!(basic_auth: @auth, headers: @headers)
|
153
152
|
options.merge!(:body => parameters)
|
154
153
|
self.class.post(base_api_endpoint("/Web/Cart/#{session_key}/Tickets/Return"), options)
|
155
154
|
end
|
156
155
|
|
157
|
-
def add_package_item(session_key, price_type, package_id, number_of_seats, zone_id, leave_single_seats, parent_package_line_item_id, unseated, requested_seats=nil, options={})
|
156
|
+
def add_package_item(session_key, price_type, package_id, number_of_seats, zone_id, leave_single_seats, parent_package_line_item_id, unseated, requested_seats = nil, options = {})
|
158
157
|
parameters =
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
158
|
+
{
|
159
|
+
'PriceType': price_type,
|
160
|
+
'PackageId': package_id,
|
161
|
+
'NumberOfSeats': number_of_seats,
|
162
|
+
'ZoneId': zone_id,
|
163
|
+
'RequestedSeats': requested_seats,
|
164
|
+
'LeaveSingleSeats': leave_single_seats,
|
165
|
+
'ParentPackageLineItemId': parent_package_line_item_id,
|
166
|
+
'Unseated': unseated,
|
167
|
+
}
|
169
168
|
options.merge!(basic_auth: @auth, headers: @headers)
|
170
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
169
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
171
170
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Packages/Fixed"), options)
|
172
171
|
end
|
173
172
|
|
174
|
-
def remove_package_item(session_key, package_id, line_item_id, options={})
|
173
|
+
def remove_package_item(session_key, package_id, line_item_id, options = {})
|
175
174
|
options.merge!(basic_auth: @auth, headers: @headers)
|
176
175
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Packages/Fixed/#{package_id}/#{line_item_id}"), options)
|
177
176
|
end
|
178
177
|
|
179
|
-
def add_nfs_package_item(session_key, nfs_package_line_item_id, performance_id, performance_group_id, price_type, package_id, number_of_seats, zone_id, leave_single_seats, unseated, options={})
|
178
|
+
def add_nfs_package_item(session_key, nfs_package_line_item_id, performance_id, performance_group_id, price_type, package_id, number_of_seats, zone_id, leave_single_seats, unseated, options = {})
|
180
179
|
parameters =
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
180
|
+
{
|
181
|
+
'NFSPackageLineItemId': nfs_package_line_item_id,
|
182
|
+
'PriceType': price_type,
|
183
|
+
'PackageId': package_id,
|
184
|
+
'PerformanceId': performance_id,
|
185
|
+
'PerformanceGroupId': performance_group_id,
|
186
|
+
'NumberOfSeats': number_of_seats,
|
187
|
+
'ZoneId': zone_id,
|
188
|
+
'LeaveSingleSeats': leave_single_seats,
|
189
|
+
'Unseated': unseated,
|
190
|
+
}
|
192
191
|
options.merge!(basic_auth: @auth, headers: @headers)
|
193
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
192
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
194
193
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Packages/Nfs"), options)
|
195
194
|
end
|
196
195
|
|
197
|
-
def remove_nfs_package_item(session_key, line_item_id, options={})
|
196
|
+
def remove_nfs_package_item(session_key, line_item_id, options = {})
|
198
197
|
options.merge!(basic_auth: @auth, headers: @headers)
|
199
198
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Packages/Nfs/#{line_item_id}"), options)
|
200
199
|
end
|
201
200
|
|
202
|
-
def add_sub_package_item(session_key, price_type, sub_package_id, number_of_seats, zone_id, leave_single_seats, parent_super_line_item_id, super_line_item_id, unseated, requested_seats=nil, options={})
|
201
|
+
def add_sub_package_item(session_key, price_type, sub_package_id, number_of_seats, zone_id, leave_single_seats, parent_super_line_item_id, super_line_item_id, unseated, requested_seats = nil, options = {})
|
203
202
|
parameters =
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
203
|
+
{
|
204
|
+
'ParentSuperPackageLineItemId': parent_super_line_item_id,
|
205
|
+
'SuperPackageLineItemId': super_line_item_id,
|
206
|
+
'PriceType': price_type,
|
207
|
+
'SubPackageId': sub_package_id,
|
208
|
+
'NumberOfSeats': number_of_seats,
|
209
|
+
'ZoneId': zone_id,
|
210
|
+
'RequestedSeats': requested_seats,
|
211
|
+
'LeaveSingleSeats': leave_single_seats,
|
212
|
+
'Unseated': unseated,
|
213
|
+
}
|
215
214
|
options.merge!(basic_auth: @auth, headers: @headers)
|
216
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
215
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
217
216
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Packages/Super"), options)
|
218
217
|
end
|
219
218
|
|
220
|
-
def remove_sub_package_item(session_key, super_package_id, super_package_line_item_id, options={})
|
219
|
+
def remove_sub_package_item(session_key, super_package_id, super_package_line_item_id, options = {})
|
221
220
|
options.merge!(basic_auth: @auth, headers: @headers)
|
222
221
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Packages/Super/#{super_package_id}/#{super_package_line_item_id}"), options)
|
223
222
|
end
|
224
223
|
|
225
|
-
def print_ticket_elements(session_key, order_id, ticket_design, reprint, mode, new_ticket_no=false, options={})
|
224
|
+
def print_ticket_elements(session_key, order_id, ticket_design, reprint, mode, new_ticket_no = false, options = {})
|
226
225
|
parameters =
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
226
|
+
{
|
227
|
+
'NewTicketNoForReprints': new_ticket_no,
|
228
|
+
'ReprintTickets': reprint,
|
229
|
+
'OrderId': order_id,
|
230
|
+
'TicketDesignId': ticket_design,
|
231
|
+
'Mode': mode,
|
232
|
+
}
|
234
233
|
options.merge!(basic_auth: @auth, headers: @headers)
|
235
234
|
options.merge!(:body => parameters)
|
236
235
|
self.class.post(base_api_endpoint("/Web/Cart/#{session_key}/Print/TicketElements"), options)
|
237
236
|
end
|
238
237
|
|
239
|
-
def remove_tickets(session_key, performance_id, line_item_id, options={})
|
238
|
+
def remove_tickets(session_key, performance_id, line_item_id, options = {})
|
240
239
|
options.merge!(basic_auth: @auth, headers: @headers)
|
241
240
|
self.class.delete(base_api_endpoint("/Web/Cart/#{session_key}/Tickets/#{performance_id}/#{line_item_id}"), options)
|
242
241
|
end
|
243
242
|
|
244
|
-
def add_or_update_fee(session_key, action, fee_id, item_fee_id=nil, amount=nil, options={})
|
243
|
+
def add_or_update_fee(session_key, action, fee_id, item_fee_id = nil, amount = nil, options = {})
|
245
244
|
parameters =
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
245
|
+
{
|
246
|
+
'Action': action,
|
247
|
+
'ItemFeeId': item_fee_id,
|
248
|
+
'FeeId': fee_id,
|
249
|
+
'Amount': amount,
|
250
|
+
}
|
252
251
|
options.merge!(basic_auth: @auth, headers: @headers)
|
253
252
|
options.merge!(:body => parameters)
|
254
253
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Fees"), options)
|
255
254
|
end
|
256
255
|
|
257
|
-
def validate_cart(session_key, super_package=false, fixed=false, flex=false, plan=false, options={})
|
256
|
+
def validate_cart(session_key, super_package = false, fixed = false, flex = false, plan = false, options = {})
|
258
257
|
parameters =
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
258
|
+
{
|
259
|
+
'ValidateSuperPackages': super_package,
|
260
|
+
'ValidateFSPackages': fixed,
|
261
|
+
'ValidateNFSPackages': flex,
|
262
|
+
'ValidatePaymentPlan': plan,
|
263
|
+
}
|
265
264
|
options.merge!(basic_auth: @auth, headers: @headers)
|
266
265
|
options.merge!(:body => parameters)
|
267
266
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Validate"), options)
|
268
267
|
end
|
269
268
|
|
270
|
-
def update_cart_properties_custom_data(session_key, index, value, options={})
|
269
|
+
def update_cart_properties_custom_data(session_key, index, value, options = {})
|
271
270
|
parameters =
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
271
|
+
{
|
272
|
+
'Index': index,
|
273
|
+
'Value': value,
|
274
|
+
}
|
276
275
|
options.merge!(basic_auth: @auth, headers: @headers)
|
277
276
|
options.merge!(:body => parameters)
|
278
277
|
put = self.class.put(base_api_endpoint("Web/Cart/#{session_key}/CustomData/#{index}"), options)
|
279
278
|
put.success?
|
280
279
|
end
|
281
280
|
|
282
|
-
def checkout(session_key, name_on_card, credit_card_number, cvv_number, credit_card_type, expiration_month, expiration_year, is_order_authorized, order_authorization_code, order_amount, allow_under_payment, options={})
|
281
|
+
def checkout(session_key, name_on_card, credit_card_number, cvv_number, credit_card_type, expiration_month, expiration_year, is_order_authorized, order_authorization_code, order_amount, allow_under_payment, options = {})
|
283
282
|
parameters =
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
283
|
+
{
|
284
|
+
'CreditCardOwner': name_on_card,
|
285
|
+
'CreditCardNumber': credit_card_number,
|
286
|
+
'CreditCardType': credit_card_type,
|
287
|
+
'CreditCardMonth': expiration_month,
|
288
|
+
'CreditCardYear': expiration_year,
|
289
|
+
'Amount': order_amount,
|
290
|
+
'AllowUnderPayment': allow_under_payment,
|
291
|
+
'CreditCardAuthenticationCode': cvv_number,
|
292
|
+
'Authorize': is_order_authorized,
|
293
|
+
'AuthorizationCode': order_authorization_code,
|
294
|
+
}
|
296
295
|
options.merge!(basic_auth: @auth, headers: @headers)
|
297
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
296
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
298
297
|
self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Checkout"), options)
|
299
298
|
end
|
300
|
-
|
301
299
|
end
|
@@ -1,18 +1,17 @@
|
|
1
1
|
module Login
|
2
|
-
|
3
|
-
def with_user(ip_address, business_unit_id, options={})
|
2
|
+
def with_user(ip_address, business_unit_id, options = {})
|
4
3
|
options.merge!(basic_auth: @auth, headers: @headers)
|
5
4
|
response = self.class.get(base_api_endpoint('Web/Session/'), options)
|
6
5
|
JSON.parse(response.body)
|
7
6
|
end
|
8
7
|
|
9
|
-
def login_using_email(email, password, login_type_id, promotion, session_key, options={})
|
8
|
+
def login_using_email(email, password, login_type_id, promotion, session_key, options = {})
|
10
9
|
parameters =
|
11
10
|
{
|
12
11
|
'UserName': email,
|
13
|
-
'Password': password,
|
12
|
+
'Password': password,
|
14
13
|
'LoginTypeId': login_type_id,
|
15
|
-
'PromotionCode': promotion
|
14
|
+
'PromotionCode': promotion,
|
16
15
|
}
|
17
16
|
options.merge!(basic_auth: @auth, headers: @headers)
|
18
17
|
options.merge!(:body => parameters)
|
@@ -20,36 +19,50 @@ module Login
|
|
20
19
|
post['IsLoggedIn']
|
21
20
|
end
|
22
21
|
|
23
|
-
def login_using_external(email, login_type_id, promotion, session_key, options={})
|
22
|
+
def login_using_external(email, login_type_id, promotion, session_key, options = {})
|
24
23
|
parameters =
|
25
24
|
{
|
26
25
|
'UserName': email,
|
27
26
|
'LoginTypeId': login_type_id,
|
28
|
-
'PromotionCode': promotion
|
27
|
+
'PromotionCode': promotion,
|
29
28
|
}
|
30
29
|
options.merge!(basic_auth: @auth, headers: @headers)
|
31
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
30
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
32
31
|
post = self.class.post(base_api_endpoint("Web/Session/#{session_key}/Login/External"), options)
|
33
32
|
post.success?
|
34
33
|
end
|
35
34
|
|
36
|
-
def login_with_token(email, login_type_id, token, promotion, session_key, options={})
|
35
|
+
def login_with_token(email, login_type_id, token, promotion, session_key, options = {})
|
37
36
|
parameters =
|
38
37
|
{
|
39
38
|
'EmailAddress': email,
|
40
39
|
'ForgotLoginToken': token,
|
41
40
|
'LoginTypeId': login_type_id,
|
42
|
-
'PromotionCode': promotion
|
41
|
+
'PromotionCode': promotion,
|
43
42
|
}
|
44
43
|
options.merge!(basic_auth: @auth, headers: @headers)
|
45
|
-
options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
|
44
|
+
options.merge!(:body => parameters.to_json, :headers => { 'Content-Type' => 'application/json' })
|
46
45
|
post = self.class.post(base_api_endpoint("Web/Session/#{session_key}/Login/Token"), options)
|
47
46
|
post['IsLoggedIn']
|
48
47
|
end
|
49
48
|
|
50
|
-
def
|
49
|
+
def login_as_guest(email, key, options = {})
|
50
|
+
# promotion will be added as a parameter in v 16.0
|
51
|
+
parameters =
|
52
|
+
{
|
53
|
+
'ElectronicAddressTypeId': 1,
|
54
|
+
'EmailAddress': email,
|
55
|
+
'LoginTypeId': 1,
|
56
|
+
}
|
57
|
+
options.merge!(basic_auth: @auth, headers: @headers)
|
58
|
+
options.merge!(body: parameters)
|
59
|
+
response = self.class.post(base_api_endpoint("Web/Session/#{key}/LoginAsGuest"), options)
|
60
|
+
JSON.parse(response.body)
|
61
|
+
end
|
62
|
+
|
63
|
+
def logout(session_key, options = {})
|
51
64
|
options.merge!(basic_auth: @auth, headers: @headers)
|
52
|
-
options.merge!(:body => {}, :headers => {'Content-Type' => 'application/json'})
|
65
|
+
options.merge!(:body => {}, :headers => { 'Content-Type' => 'application/json' })
|
53
66
|
self.class.post(base_api_endpoint("/Web/Session/#{session_key}/Logout"), options)
|
54
67
|
end
|
55
68
|
end
|
@@ -1,18 +1,17 @@
|
|
1
1
|
module PaymentPlanExtension
|
2
|
-
|
3
|
-
def add_billing_payment_plan(session_key, billing_id, billing_type_id, name, number, month, year, start_date=nil, end_date=nil, options={})
|
2
|
+
def add_billing_payment_plan(session_key, billing_id, billing_type_id, name, number, month, year, start_date = nil, end_date = nil, options = {})
|
4
3
|
parameters =
|
5
4
|
{
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
5
|
+
'BillingScheduleId': billing_id,
|
6
|
+
'BillingTypeId': billing_type_id,
|
7
|
+
'StartDate': start_date,
|
8
|
+
'EndDate': end_date,
|
9
|
+
'Card': {
|
10
|
+
'Name': name,
|
11
|
+
'Number': number,
|
12
|
+
'ExpiryMonth': month,
|
13
|
+
'ExpiryYear': year,
|
14
|
+
},
|
16
15
|
}
|
17
16
|
options.merge!(basic_auth: @auth, headers: @headers)
|
18
17
|
options.merge!(:body => parameters)
|
@@ -20,12 +19,12 @@ module PaymentPlanExtension
|
|
20
19
|
JSON.parse(response.body)
|
21
20
|
end
|
22
21
|
|
23
|
-
def preview_billing_payment_plan(session_key, billing_id, start_date=nil, end_date=nil, options={})
|
22
|
+
def preview_billing_payment_plan(session_key, billing_id, start_date = nil, end_date = nil, options = {})
|
24
23
|
parameters =
|
25
24
|
{
|
26
|
-
|
27
|
-
|
28
|
-
|
25
|
+
'BillingScheduleId': billing_id,
|
26
|
+
'StartDate': start_date,
|
27
|
+
'EndDate': end_date,
|
29
28
|
}
|
30
29
|
options.merge!(basic_auth: @auth, headers: @headers)
|
31
30
|
options.merge!(:body => parameters)
|
@@ -33,10 +32,10 @@ module PaymentPlanExtension
|
|
33
32
|
JSON.parse(response.body)
|
34
33
|
end
|
35
34
|
|
36
|
-
def validate_payment_plan(session_key, options={})
|
35
|
+
def validate_payment_plan(session_key, options = {})
|
37
36
|
parameters =
|
38
37
|
{
|
39
|
-
|
38
|
+
'ValidatePaymentPlan': true,
|
40
39
|
}
|
41
40
|
options.merge!(basic_auth: @auth, headers: @headers)
|
42
41
|
options.merge!(:body => parameters)
|
@@ -44,7 +43,7 @@ module PaymentPlanExtension
|
|
44
43
|
JSON.parse(response.body)
|
45
44
|
end
|
46
45
|
|
47
|
-
def remove_payment_plan(session_key, options={})
|
46
|
+
def remove_payment_plan(session_key, options = {})
|
48
47
|
options.merge!(basic_auth: @auth, headers: @headers)
|
49
48
|
self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/Payments/Plan"), options)
|
50
49
|
end
|