tessitura_rest 0.7.3 → 0.7.8

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: 5cbaf72940e9ccd90f84cd887fd200f058f7a92fccdedd4800512d2fe69ebf86
4
- data.tar.gz: b1a57a38160a6e2d423b149eb2c8deb05f64766166af533038808a7a831d44c2
3
+ metadata.gz: 8663f1d3470c294f0b842dd667e0af9821cd944ede9b5eb4121edd3a880670b7
4
+ data.tar.gz: 56036d380aa39ebaa5ecb0af8409974814feea5ac1de1e0423305282d7c6392b
5
5
  SHA512:
6
- metadata.gz: 6a23ec88b30f65cb35fea909d34a27ab9895c779c0b46a167213754e288f38c8ab68f2839e807f90313567c2cd773c4e9aa8dc6b31c66d9c1602fabe349ff591
7
- data.tar.gz: d5508d8c77df4e0fb115af396ed5984468551a71296343632961d873eb9938ed0bded0248cb433b48c946e0c3a2c918a9e0dccb6034e49465dcfb6cf4dc64bf4
6
+ metadata.gz: dce3d83bbc1680b45f7b542f95d0c7e53688c1a129a4f257b3c1090e9e2d28811349253ae1646fb32530b946199be664ce80e8bdb090f1b85343de680e8212b9
7
+ data.tar.gz: 726d05a1dea81ed5f82c35458be14b062f062c3ecf0ac97f67bf94c08a45aa7250f2266272d5bea7f7f7e6ac2a1d7cf303136ff627faa303589e625bf2987baf
data/.gitignore CHANGED
@@ -8,3 +8,4 @@
8
8
  /spec/reports/
9
9
  /tmp/
10
10
  .env
11
+ .idea/
@@ -1,3 +1,3 @@
1
1
  class TessituraRest
2
- VERSION = '0.7.3'
2
+ VERSION = '0.7.8'
3
3
  end
@@ -290,4 +290,24 @@ module Cart
290
290
  put = self.class.put(base_api_endpoint("Web/Cart/#{session_key}/CustomData/#{index}"), options)
291
291
  put.success?
292
292
  end
293
- end
293
+
294
+ 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={})
295
+ parameters =
296
+ {
297
+ "CreditCardOwner": name_on_card,
298
+ "CreditCardNumber": credit_card_number,
299
+ "CreditCardType": credit_card_type,
300
+ "CreditCardMonth": expiration_month,
301
+ "CreditCardYear": expiration_year,
302
+ "Amount": order_amount,
303
+ "AllowUnderPayment": allow_under_payment,
304
+ "CreditCardAuthenticationCode": cvv_number,
305
+ "Authorize": is_order_authorized,
306
+ "AuthorizationCode": order_authorization_code,
307
+ }
308
+ options.merge!(basic_auth: @auth, headers: @headers)
309
+ options.merge!(:body => parameters)
310
+ self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Checkout"), options)
311
+ end
312
+
313
+ end
@@ -46,4 +46,10 @@ module Login
46
46
  post = self.class.post(base_api_endpoint("Web/Session/#{session_key}/Login/Token"), options)
47
47
  post['IsLoggedIn']
48
48
  end
49
+
50
+ def logout(session_key, options={})
51
+ options.merge!(basic_auth: @auth, headers: @headers)
52
+ options.merge!(:body => {}, :headers => {'Content-Type' => 'application/json'})
53
+ self.class.post(base_api_endpoint("/Web/Session/#{session_key}/Logout"), options)
54
+ end
49
55
  end
@@ -8,16 +8,26 @@ module Session
8
8
 
9
9
  def create_session(ip, options={})
10
10
  parameters =
11
- {
12
- 'IpAddress': ip,
13
- 'Organization': 'Tessitura Web'
14
- }
11
+ {
12
+ 'IpAddress': ip,
13
+ 'Organization': 'Tessitura Web'
14
+ }
15
15
  options.merge!(basic_auth: @auth, headers: @headers)
16
16
  options.merge!(body: parameters)
17
17
  response = self.class.post(base_api_endpoint('Web/Session'), options)
18
18
  JSON.parse(response.body)
19
19
  end
20
20
 
21
+ def transfer_session(session_key, new_session_key, options={})
22
+ parameters =
23
+ {
24
+ 'NewSessionKey': new_session_key,
25
+ }
26
+ options.merge!(basic_auth: @auth, headers: @headers)
27
+ options.merge!(body: parameters)
28
+ self.class.post(base_api_endpoint("Web/Session/#{session_key}/Transfer"), options)
29
+ end
30
+
21
31
  def get_expiration(key, options={})
22
32
  options.merge!(basic_auth: @auth, headers: @headers)
23
33
  response = self.class.get(base_api_endpoint("Web/Session/#{key}/Expiration"), options)
@@ -77,6 +87,23 @@ module Session
77
87
  self.class.post(base_api_endpoint("/Web/Session/#{key}/Login/SendCredentials"), options)
78
88
  end
79
89
 
90
+ def update_login(key, user_name, old_password, new_password, email, new_email, options={})
91
+ parameters =
92
+ {
93
+ 'LoginName': user_name,
94
+ 'NewLoginName': new_email,
95
+ 'Password': old_password,
96
+ 'NewPassword': new_password,
97
+ 'EmailAddress': email,
98
+ 'NewEmailAddress': new_email,
99
+ 'LoginTypeId': 1,
100
+ 'PromotionCode': 0,
101
+ }
102
+ options.merge!(basic_auth: @auth, headers: @headers)
103
+ options.merge!(:body => parameters)
104
+ self.class.put(base_api_endpoint("Web/Session/#{key}/WebLogins"), options)
105
+ end
106
+
80
107
  def get_shipping_methods(key, options={})
81
108
  options.merge!(basic_auth: @auth, headers: @headers)
82
109
  response = self.class.get(base_api_endpoint("Web/Session/#{key}/DeliveryMethods"), options)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tessitura_rest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brittany Martin
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-07 00:00:00.000000000 Z
11
+ date: 2020-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -167,7 +167,7 @@ homepage: https://github.com/pgharts/tessitura
167
167
  licenses:
168
168
  - MIT
169
169
  metadata: {}
170
- post_install_message:
170
+ post_install_message:
171
171
  rdoc_options: []
172
172
  require_paths:
173
173
  - lib
@@ -182,8 +182,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
182
182
  - !ruby/object:Gem::Version
183
183
  version: '0'
184
184
  requirements: []
185
- rubygems_version: 3.1.2
186
- signing_key:
185
+ rubygems_version: 3.0.3
186
+ signing_key:
187
187
  specification_version: 4
188
188
  summary: Rest API Endpoint for the Tessitura Rest API (v14+).
189
189
  test_files: []