processout 3.4.0 → 6.0.0
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/.github/workflows/ci.yaml +1 -1
- data/lib/processout/alternative_merchant_certificate.rb +5 -3
- data/lib/processout/apm_payment_processing_configuration.rb +81 -0
- data/lib/processout/apple_pay_alternative_merchant_certificates.rb +5 -3
- data/lib/processout/balances.rb +5 -3
- data/lib/processout/card.rb +45 -1
- data/lib/processout/card_contact.rb +11 -0
- data/lib/processout/card_create_request.rb +38 -2
- data/lib/processout/card_information.rb +1 -1
- data/lib/processout/card_scheme_details.rb +81 -0
- data/lib/processout/card_update_request.rb +37 -2
- data/lib/processout/customer.rb +8 -63
- data/lib/processout/device.rb +22 -0
- data/lib/processout/event.rb +1 -1
- data/lib/processout/export_layout.rb +4 -4
- data/lib/processout/export_layout_configuration_options.rb +1 -1
- data/lib/processout/gateway_configuration.rb +3 -3
- data/lib/processout/invoice.rb +163 -80
- data/lib/processout/invoice_device.rb +11 -0
- data/lib/processout/invoice_external_fraud_tools.rb +12 -0
- data/lib/processout/networking/request.rb +1 -1
- data/lib/processout/payment_processing_configuration.rb +93 -0
- data/lib/processout/payout.rb +1 -1
- data/lib/processout/product.rb +8 -6
- data/lib/processout/project.rb +2 -63
- data/lib/processout/project_sftp_settings_public.rb +1 -1
- data/lib/processout/refund.rb +1 -1
- data/lib/processout/submerchant.rb +92 -0
- data/lib/processout/submerchant_mapping.rb +103 -0
- data/lib/processout/token.rb +22 -7
- data/lib/processout/transaction.rb +17 -38
- data/lib/processout/transaction_operation.rb +11 -0
- data/lib/processout/unsupported_feature_bypass.rb +11 -0
- data/lib/processout/version.rb +1 -1
- data/lib/processout.rb +40 -46
- metadata +12 -13
- data/lib/processout/activity.rb +0 -206
- data/lib/processout/addon.rb +0 -401
- data/lib/processout/coupon.rb +0 -352
- data/lib/processout/discount.rb +0 -360
- data/lib/processout/plan.rb +0 -368
- data/lib/processout/subscription.rb +0 -910
|
@@ -9,12 +9,17 @@ module ProcessOut
|
|
|
9
9
|
class UnsupportedFeatureBypass
|
|
10
10
|
|
|
11
11
|
attr_reader :incremental_authorization
|
|
12
|
+
attr_reader :split_payments
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
def incremental_authorization=(val)
|
|
15
16
|
@incremental_authorization = val
|
|
16
17
|
end
|
|
17
18
|
|
|
19
|
+
def split_payments=(val)
|
|
20
|
+
@split_payments = val
|
|
21
|
+
end
|
|
22
|
+
|
|
18
23
|
|
|
19
24
|
# Initializes the UnsupportedFeatureBypass object
|
|
20
25
|
# Params:
|
|
@@ -24,6 +29,7 @@ module ProcessOut
|
|
|
24
29
|
@client = client
|
|
25
30
|
|
|
26
31
|
self.incremental_authorization = data.fetch(:incremental_authorization, nil)
|
|
32
|
+
self.split_payments = data.fetch(:split_payments, nil)
|
|
27
33
|
|
|
28
34
|
end
|
|
29
35
|
|
|
@@ -36,6 +42,7 @@ module ProcessOut
|
|
|
36
42
|
def to_json(options)
|
|
37
43
|
{
|
|
38
44
|
"incremental_authorization": self.incremental_authorization,
|
|
45
|
+
"split_payments": self.split_payments,
|
|
39
46
|
}.to_json
|
|
40
47
|
end
|
|
41
48
|
|
|
@@ -49,6 +56,9 @@ module ProcessOut
|
|
|
49
56
|
if data.include? "incremental_authorization"
|
|
50
57
|
self.incremental_authorization = data["incremental_authorization"]
|
|
51
58
|
end
|
|
59
|
+
if data.include? "split_payments"
|
|
60
|
+
self.split_payments = data["split_payments"]
|
|
61
|
+
end
|
|
52
62
|
|
|
53
63
|
self
|
|
54
64
|
end
|
|
@@ -61,6 +71,7 @@ module ProcessOut
|
|
|
61
71
|
return self
|
|
62
72
|
end
|
|
63
73
|
self.incremental_authorization = data.fetch(:incremental_authorization, self.incremental_authorization)
|
|
74
|
+
self.split_payments = data.fetch(:split_payments, self.split_payments)
|
|
64
75
|
|
|
65
76
|
self
|
|
66
77
|
end
|
data/lib/processout/version.rb
CHANGED
data/lib/processout.rb
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
require "processout/version"
|
|
2
2
|
require "processout/gateway_request"
|
|
3
|
-
require "processout/activity"
|
|
4
|
-
require "processout/addon"
|
|
5
3
|
require "processout/api_version"
|
|
6
4
|
require "processout/apple_pay_alternative_merchant_certificates"
|
|
7
5
|
require "processout/alternative_merchant_certificate"
|
|
@@ -11,11 +9,9 @@ require "processout/balances_customer_action"
|
|
|
11
9
|
require "processout/card"
|
|
12
10
|
require "processout/card_information"
|
|
13
11
|
require "processout/phone"
|
|
14
|
-
require "processout/coupon"
|
|
15
12
|
require "processout/customer"
|
|
16
13
|
require "processout/customer_phone"
|
|
17
14
|
require "processout/token"
|
|
18
|
-
require "processout/discount"
|
|
19
15
|
require "processout/event"
|
|
20
16
|
require "processout/export_layout"
|
|
21
17
|
require "processout/export_layout_configuration"
|
|
@@ -38,6 +34,8 @@ require "processout/invoice_shipping"
|
|
|
38
34
|
require "processout/invoice_shipping_phone"
|
|
39
35
|
require "processout/invoice_billing"
|
|
40
36
|
require "processout/unsupported_feature_bypass"
|
|
37
|
+
require "processout/payment_processing_configuration"
|
|
38
|
+
require "processout/apm_payment_processing_configuration"
|
|
41
39
|
require "processout/invoice_detail"
|
|
42
40
|
require "processout/invoice_submerchant"
|
|
43
41
|
require "processout/submerchant_phone_number"
|
|
@@ -47,13 +45,13 @@ require "processout/dunning_action"
|
|
|
47
45
|
require "processout/payout"
|
|
48
46
|
require "processout/payout_item"
|
|
49
47
|
require "processout/payout_item_amount_breakdowns"
|
|
50
|
-
require "processout/plan"
|
|
51
48
|
require "processout/product"
|
|
52
49
|
require "processout/project"
|
|
53
50
|
require "processout/project_sftp_settings"
|
|
54
51
|
require "processout/project_sftp_settings_public"
|
|
55
52
|
require "processout/refund"
|
|
56
|
-
require "processout/
|
|
53
|
+
require "processout/submerchant"
|
|
54
|
+
require "processout/submerchant_mapping"
|
|
57
55
|
require "processout/transaction"
|
|
58
56
|
require "processout/native_apm_response"
|
|
59
57
|
require "processout/native_apm_parameter_definition"
|
|
@@ -65,11 +63,12 @@ require "processout/payment_data_three_ds_authentication"
|
|
|
65
63
|
require "processout/transaction_operation"
|
|
66
64
|
require "processout/webhook"
|
|
67
65
|
require "processout/webhook_endpoint"
|
|
66
|
+
require "processout/card_update_request"
|
|
67
|
+
require "processout/card_create_request"
|
|
68
|
+
require "processout/card_scheme_details"
|
|
68
69
|
require "processout/device"
|
|
69
70
|
require "processout/card_contact"
|
|
70
71
|
require "processout/card_shipping"
|
|
71
|
-
require "processout/card_update_request"
|
|
72
|
-
require "processout/card_create_request"
|
|
73
72
|
require "processout/error_codes"
|
|
74
73
|
require "processout/category_error_codes"
|
|
75
74
|
require "processout/external_three_ds"
|
|
@@ -88,16 +87,6 @@ module ProcessOut
|
|
|
88
87
|
@project_secret = project_secret
|
|
89
88
|
end
|
|
90
89
|
|
|
91
|
-
# Create a new Activity instance
|
|
92
|
-
def activity(data = {})
|
|
93
|
-
obj = Activity.new(self, data)
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
# Create a new Addon instance
|
|
97
|
-
def addon(data = {})
|
|
98
|
-
obj = Addon.new(self, data)
|
|
99
|
-
end
|
|
100
|
-
|
|
101
90
|
# Create a new APIVersion instance
|
|
102
91
|
def api_version(data = {})
|
|
103
92
|
obj = APIVersion.new(self, data)
|
|
@@ -143,11 +132,6 @@ module ProcessOut
|
|
|
143
132
|
obj = Phone.new(self, data)
|
|
144
133
|
end
|
|
145
134
|
|
|
146
|
-
# Create a new Coupon instance
|
|
147
|
-
def coupon(data = {})
|
|
148
|
-
obj = Coupon.new(self, data)
|
|
149
|
-
end
|
|
150
|
-
|
|
151
135
|
# Create a new Customer instance
|
|
152
136
|
def customer(data = {})
|
|
153
137
|
obj = Customer.new(self, data)
|
|
@@ -163,11 +147,6 @@ module ProcessOut
|
|
|
163
147
|
obj = Token.new(self, data)
|
|
164
148
|
end
|
|
165
149
|
|
|
166
|
-
# Create a new Discount instance
|
|
167
|
-
def discount(data = {})
|
|
168
|
-
obj = Discount.new(self, data)
|
|
169
|
-
end
|
|
170
|
-
|
|
171
150
|
# Create a new Event instance
|
|
172
151
|
def event(data = {})
|
|
173
152
|
obj = Event.new(self, data)
|
|
@@ -278,6 +257,16 @@ module ProcessOut
|
|
|
278
257
|
obj = UnsupportedFeatureBypass.new(self, data)
|
|
279
258
|
end
|
|
280
259
|
|
|
260
|
+
# Create a new PaymentProcessingConfiguration instance
|
|
261
|
+
def payment_processing_configuration(data = {})
|
|
262
|
+
obj = PaymentProcessingConfiguration.new(self, data)
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
# Create a new APMPaymentProcessingConfiguration instance
|
|
266
|
+
def apm_payment_processing_configuration(data = {})
|
|
267
|
+
obj = APMPaymentProcessingConfiguration.new(self, data)
|
|
268
|
+
end
|
|
269
|
+
|
|
281
270
|
# Create a new InvoiceDetail instance
|
|
282
271
|
def invoice_detail(data = {})
|
|
283
272
|
obj = InvoiceDetail.new(self, data)
|
|
@@ -323,11 +312,6 @@ module ProcessOut
|
|
|
323
312
|
obj = PayoutItemAmountBreakdowns.new(self, data)
|
|
324
313
|
end
|
|
325
314
|
|
|
326
|
-
# Create a new Plan instance
|
|
327
|
-
def plan(data = {})
|
|
328
|
-
obj = Plan.new(self, data)
|
|
329
|
-
end
|
|
330
|
-
|
|
331
315
|
# Create a new Product instance
|
|
332
316
|
def product(data = {})
|
|
333
317
|
obj = Product.new(self, data)
|
|
@@ -353,9 +337,14 @@ module ProcessOut
|
|
|
353
337
|
obj = Refund.new(self, data)
|
|
354
338
|
end
|
|
355
339
|
|
|
356
|
-
# Create a new
|
|
357
|
-
def
|
|
358
|
-
obj =
|
|
340
|
+
# Create a new Submerchant instance
|
|
341
|
+
def submerchant(data = {})
|
|
342
|
+
obj = Submerchant.new(self, data)
|
|
343
|
+
end
|
|
344
|
+
|
|
345
|
+
# Create a new SubmerchantMapping instance
|
|
346
|
+
def submerchant_mapping(data = {})
|
|
347
|
+
obj = SubmerchantMapping.new(self, data)
|
|
359
348
|
end
|
|
360
349
|
|
|
361
350
|
# Create a new Transaction instance
|
|
@@ -413,6 +402,21 @@ module ProcessOut
|
|
|
413
402
|
obj = WebhookEndpoint.new(self, data)
|
|
414
403
|
end
|
|
415
404
|
|
|
405
|
+
# Create a new CardUpdateRequest instance
|
|
406
|
+
def card_update_request(data = {})
|
|
407
|
+
obj = CardUpdateRequest.new(self, data)
|
|
408
|
+
end
|
|
409
|
+
|
|
410
|
+
# Create a new CardCreateRequest instance
|
|
411
|
+
def card_create_request(data = {})
|
|
412
|
+
obj = CardCreateRequest.new(self, data)
|
|
413
|
+
end
|
|
414
|
+
|
|
415
|
+
# Create a new CardSchemeDetails instance
|
|
416
|
+
def card_scheme_details(data = {})
|
|
417
|
+
obj = CardSchemeDetails.new(self, data)
|
|
418
|
+
end
|
|
419
|
+
|
|
416
420
|
# Create a new Device instance
|
|
417
421
|
def device(data = {})
|
|
418
422
|
obj = Device.new(self, data)
|
|
@@ -428,16 +432,6 @@ module ProcessOut
|
|
|
428
432
|
obj = CardShipping.new(self, data)
|
|
429
433
|
end
|
|
430
434
|
|
|
431
|
-
# Create a new CardUpdateRequest instance
|
|
432
|
-
def card_update_request(data = {})
|
|
433
|
-
obj = CardUpdateRequest.new(self, data)
|
|
434
|
-
end
|
|
435
|
-
|
|
436
|
-
# Create a new CardCreateRequest instance
|
|
437
|
-
def card_create_request(data = {})
|
|
438
|
-
obj = CardCreateRequest.new(self, data)
|
|
439
|
-
end
|
|
440
|
-
|
|
441
435
|
# Create a new ErrorCodes instance
|
|
442
436
|
def error_codes(data = {})
|
|
443
437
|
obj = ErrorCodes.new(self, data)
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: processout
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 6.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Manuel HUEZ
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-08-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -52,7 +52,7 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '3.0'
|
|
55
|
-
description:
|
|
55
|
+
description:
|
|
56
56
|
email:
|
|
57
57
|
- manuel@processout.com
|
|
58
58
|
executables: []
|
|
@@ -74,10 +74,9 @@ files:
|
|
|
74
74
|
- bin/console
|
|
75
75
|
- bin/setup
|
|
76
76
|
- lib/processout.rb
|
|
77
|
-
- lib/processout/activity.rb
|
|
78
|
-
- lib/processout/addon.rb
|
|
79
77
|
- lib/processout/alternative_merchant_certificate.rb
|
|
80
78
|
- lib/processout/api_version.rb
|
|
79
|
+
- lib/processout/apm_payment_processing_configuration.rb
|
|
81
80
|
- lib/processout/apple_pay_alternative_merchant_certificates.rb
|
|
82
81
|
- lib/processout/balance.rb
|
|
83
82
|
- lib/processout/balances.rb
|
|
@@ -86,15 +85,14 @@ files:
|
|
|
86
85
|
- lib/processout/card_contact.rb
|
|
87
86
|
- lib/processout/card_create_request.rb
|
|
88
87
|
- lib/processout/card_information.rb
|
|
88
|
+
- lib/processout/card_scheme_details.rb
|
|
89
89
|
- lib/processout/card_shipping.rb
|
|
90
90
|
- lib/processout/card_update_request.rb
|
|
91
91
|
- lib/processout/category_error_codes.rb
|
|
92
|
-
- lib/processout/coupon.rb
|
|
93
92
|
- lib/processout/customer.rb
|
|
94
93
|
- lib/processout/customer_action.rb
|
|
95
94
|
- lib/processout/customer_phone.rb
|
|
96
95
|
- lib/processout/device.rb
|
|
97
|
-
- lib/processout/discount.rb
|
|
98
96
|
- lib/processout/dunning_action.rb
|
|
99
97
|
- lib/processout/error_codes.rb
|
|
100
98
|
- lib/processout/errors/authentication_error.rb
|
|
@@ -138,19 +136,20 @@ files:
|
|
|
138
136
|
- lib/processout/payment_data_network_authentication.rb
|
|
139
137
|
- lib/processout/payment_data_three_ds_authentication.rb
|
|
140
138
|
- lib/processout/payment_data_three_ds_request.rb
|
|
139
|
+
- lib/processout/payment_processing_configuration.rb
|
|
141
140
|
- lib/processout/payout.rb
|
|
142
141
|
- lib/processout/payout_item.rb
|
|
143
142
|
- lib/processout/payout_item_amount_breakdowns.rb
|
|
144
143
|
- lib/processout/phone.rb
|
|
145
|
-
- lib/processout/plan.rb
|
|
146
144
|
- lib/processout/product.rb
|
|
147
145
|
- lib/processout/project.rb
|
|
148
146
|
- lib/processout/project_sftp_settings.rb
|
|
149
147
|
- lib/processout/project_sftp_settings_public.rb
|
|
150
148
|
- lib/processout/refund.rb
|
|
149
|
+
- lib/processout/submerchant.rb
|
|
151
150
|
- lib/processout/submerchant_address.rb
|
|
151
|
+
- lib/processout/submerchant_mapping.rb
|
|
152
152
|
- lib/processout/submerchant_phone_number.rb
|
|
153
|
-
- lib/processout/subscription.rb
|
|
154
153
|
- lib/processout/three_ds.rb
|
|
155
154
|
- lib/processout/token.rb
|
|
156
155
|
- lib/processout/transaction.rb
|
|
@@ -164,7 +163,7 @@ homepage: https://docs.processout.com
|
|
|
164
163
|
licenses:
|
|
165
164
|
- MIT
|
|
166
165
|
metadata: {}
|
|
167
|
-
post_install_message:
|
|
166
|
+
post_install_message:
|
|
168
167
|
rdoc_options: []
|
|
169
168
|
require_paths:
|
|
170
169
|
- lib
|
|
@@ -179,8 +178,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
179
178
|
- !ruby/object:Gem::Version
|
|
180
179
|
version: '0'
|
|
181
180
|
requirements: []
|
|
182
|
-
rubygems_version: 3.
|
|
183
|
-
signing_key:
|
|
181
|
+
rubygems_version: 3.4.20
|
|
182
|
+
signing_key:
|
|
184
183
|
specification_version: 4
|
|
185
184
|
summary: Ruby bindings for the ProcessOut API
|
|
186
185
|
test_files: []
|
data/lib/processout/activity.rb
DELETED
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
# The content of this file was automatically generated
|
|
2
|
-
|
|
3
|
-
require "cgi"
|
|
4
|
-
require "json"
|
|
5
|
-
require "processout/networking/request"
|
|
6
|
-
require "processout/networking/response"
|
|
7
|
-
|
|
8
|
-
module ProcessOut
|
|
9
|
-
class Activity
|
|
10
|
-
|
|
11
|
-
attr_reader :id
|
|
12
|
-
attr_reader :project
|
|
13
|
-
attr_reader :project_id
|
|
14
|
-
attr_reader :title
|
|
15
|
-
attr_reader :content
|
|
16
|
-
attr_reader :level
|
|
17
|
-
attr_reader :created_at
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
def id=(val)
|
|
21
|
-
@id = val
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def project=(val)
|
|
25
|
-
if val.nil?
|
|
26
|
-
@project = val
|
|
27
|
-
return
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
if val.instance_of? Project
|
|
31
|
-
@project = val
|
|
32
|
-
else
|
|
33
|
-
obj = Project.new(@client)
|
|
34
|
-
obj.fill_with_data(val)
|
|
35
|
-
@project = obj
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
def project_id=(val)
|
|
41
|
-
@project_id = val
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
def title=(val)
|
|
45
|
-
@title = val
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
def content=(val)
|
|
49
|
-
@content = val
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def level=(val)
|
|
53
|
-
@level = val
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
def created_at=(val)
|
|
57
|
-
@created_at = val
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
# Initializes the Activity object
|
|
62
|
-
# Params:
|
|
63
|
-
# +client+:: +ProcessOut+ client instance
|
|
64
|
-
# +data+:: data that can be used to fill the object
|
|
65
|
-
def initialize(client, data = {})
|
|
66
|
-
@client = client
|
|
67
|
-
|
|
68
|
-
self.id = data.fetch(:id, nil)
|
|
69
|
-
self.project = data.fetch(:project, nil)
|
|
70
|
-
self.project_id = data.fetch(:project_id, nil)
|
|
71
|
-
self.title = data.fetch(:title, nil)
|
|
72
|
-
self.content = data.fetch(:content, nil)
|
|
73
|
-
self.level = data.fetch(:level, nil)
|
|
74
|
-
self.created_at = data.fetch(:created_at, nil)
|
|
75
|
-
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
# Create a new Activity using the current client
|
|
79
|
-
def new(data = {})
|
|
80
|
-
Activity.new(@client, data)
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# Overrides the JSON marshaller to only send the fields we want
|
|
84
|
-
def to_json(options)
|
|
85
|
-
{
|
|
86
|
-
"id": self.id,
|
|
87
|
-
"project": self.project,
|
|
88
|
-
"project_id": self.project_id,
|
|
89
|
-
"title": self.title,
|
|
90
|
-
"content": self.content,
|
|
91
|
-
"level": self.level,
|
|
92
|
-
"created_at": self.created_at,
|
|
93
|
-
}.to_json
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
# Fills the object with data coming from the API
|
|
97
|
-
# Params:
|
|
98
|
-
# +data+:: +Hash+ of data coming from the API
|
|
99
|
-
def fill_with_data(data)
|
|
100
|
-
if data.nil?
|
|
101
|
-
return self
|
|
102
|
-
end
|
|
103
|
-
if data.include? "id"
|
|
104
|
-
self.id = data["id"]
|
|
105
|
-
end
|
|
106
|
-
if data.include? "project"
|
|
107
|
-
self.project = data["project"]
|
|
108
|
-
end
|
|
109
|
-
if data.include? "project_id"
|
|
110
|
-
self.project_id = data["project_id"]
|
|
111
|
-
end
|
|
112
|
-
if data.include? "title"
|
|
113
|
-
self.title = data["title"]
|
|
114
|
-
end
|
|
115
|
-
if data.include? "content"
|
|
116
|
-
self.content = data["content"]
|
|
117
|
-
end
|
|
118
|
-
if data.include? "level"
|
|
119
|
-
self.level = data["level"]
|
|
120
|
-
end
|
|
121
|
-
if data.include? "created_at"
|
|
122
|
-
self.created_at = data["created_at"]
|
|
123
|
-
end
|
|
124
|
-
|
|
125
|
-
self
|
|
126
|
-
end
|
|
127
|
-
|
|
128
|
-
# Prefills the object with the data passed as parameters
|
|
129
|
-
# Params:
|
|
130
|
-
# +data+:: +Hash+ of data
|
|
131
|
-
def prefill(data)
|
|
132
|
-
if data.nil?
|
|
133
|
-
return self
|
|
134
|
-
end
|
|
135
|
-
self.id = data.fetch(:id, self.id)
|
|
136
|
-
self.project = data.fetch(:project, self.project)
|
|
137
|
-
self.project_id = data.fetch(:project_id, self.project_id)
|
|
138
|
-
self.title = data.fetch(:title, self.title)
|
|
139
|
-
self.content = data.fetch(:content, self.content)
|
|
140
|
-
self.level = data.fetch(:level, self.level)
|
|
141
|
-
self.created_at = data.fetch(:created_at, self.created_at)
|
|
142
|
-
|
|
143
|
-
self
|
|
144
|
-
end
|
|
145
|
-
|
|
146
|
-
# Get all the project activities.
|
|
147
|
-
# Params:
|
|
148
|
-
# +options+:: +Hash+ of options
|
|
149
|
-
def all(options = {})
|
|
150
|
-
self.prefill(options)
|
|
151
|
-
|
|
152
|
-
request = Request.new(@client)
|
|
153
|
-
path = "/activities"
|
|
154
|
-
data = {
|
|
155
|
-
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
response = Response.new(request.get(path, data, options))
|
|
159
|
-
return_values = Array.new
|
|
160
|
-
|
|
161
|
-
a = Array.new
|
|
162
|
-
body = response.body
|
|
163
|
-
for v in body['activities']
|
|
164
|
-
tmp = Activity.new(@client)
|
|
165
|
-
tmp.fill_with_data(v)
|
|
166
|
-
a.push(tmp)
|
|
167
|
-
end
|
|
168
|
-
|
|
169
|
-
return_values.push(a)
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
return_values[0]
|
|
174
|
-
end
|
|
175
|
-
|
|
176
|
-
# Find a specific activity and fetch its data.
|
|
177
|
-
# Params:
|
|
178
|
-
# +activity_id+:: ID of the activity
|
|
179
|
-
# +options+:: +Hash+ of options
|
|
180
|
-
def find(activity_id, options = {})
|
|
181
|
-
self.prefill(options)
|
|
182
|
-
|
|
183
|
-
request = Request.new(@client)
|
|
184
|
-
path = "/activities/" + CGI.escape(activity_id) + ""
|
|
185
|
-
data = {
|
|
186
|
-
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
response = Response.new(request.get(path, data, options))
|
|
190
|
-
return_values = Array.new
|
|
191
|
-
|
|
192
|
-
body = response.body
|
|
193
|
-
body = body["activity"]
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
obj = Activity.new(@client)
|
|
197
|
-
return_values.push(obj.fill_with_data(body))
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
return_values[0]
|
|
202
|
-
end
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
end
|
|
206
|
-
end
|