caren-api 0.5.8 → 0.5.9
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/caren-api.gemspec +1 -1
- data/lib/caren/store/invoice.rb +22 -1
- data/spec/store/invoice_spec.rb +6 -0
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.9
|
data/caren-api.gemspec
CHANGED
data/lib/caren/store/invoice.rb
CHANGED
@@ -54,10 +54,23 @@ class Caren::Store::Invoice < Caren::Base
|
|
54
54
|
session.delete self.class.resource_url(self.id)
|
55
55
|
end
|
56
56
|
|
57
|
+
def mark_as_paid method, description, session
|
58
|
+
self.class.from_xml session.post(self.class.mark_as_paid_url(self.id), self.class.mark_as_paid_xml(method,description))
|
59
|
+
end
|
60
|
+
|
61
|
+
def mark_as_revoked session
|
62
|
+
self.class.from_xml session.post(self.class.mark_as_revoked_url(self.id), nil)
|
63
|
+
end
|
64
|
+
|
57
65
|
def email session
|
58
66
|
self.class.from_xml session.post(self.class.email_url(self.id), self.to_xml)
|
59
67
|
end
|
60
68
|
|
69
|
+
def self.mark_as_paid_xml method=nil, description=nil
|
70
|
+
body = { :payment_method_description => description, :payment_method => method }
|
71
|
+
return body.to_xml( :root => (self.node_root || self.class.node_root) )
|
72
|
+
end
|
73
|
+
|
61
74
|
def as_xml
|
62
75
|
# make sure we have the correct address nodes here
|
63
76
|
billing_address.purpose = 'billing' if billing_address
|
@@ -81,7 +94,7 @@ class Caren::Store::Invoice < Caren::Base
|
|
81
94
|
:paid_at => self.paid_at
|
82
95
|
}
|
83
96
|
end
|
84
|
-
|
97
|
+
|
85
98
|
def self.init_dependent_objects invoice
|
86
99
|
|
87
100
|
if invoice.shipping_address.is_a?(Hash)
|
@@ -112,6 +125,14 @@ class Caren::Store::Invoice < Caren::Base
|
|
112
125
|
def self.filter_url filter
|
113
126
|
"#{self.resource_url}?filter=#{filter}"
|
114
127
|
end
|
128
|
+
|
129
|
+
def self.mark_as_revoked_url id
|
130
|
+
"#{self.resource_url(id)}/mark_as_revoked"
|
131
|
+
end
|
132
|
+
|
133
|
+
def self.mark_as_paid_url id
|
134
|
+
"#{self.resource_url(id)}/mark_as_paid"
|
135
|
+
end
|
115
136
|
|
116
137
|
def self.email_url id
|
117
138
|
"#{self.resource_url(id)}/email"
|
data/spec/store/invoice_spec.rb
CHANGED
@@ -29,6 +29,12 @@ describe "Store::Invoice", "converting to xml" do
|
|
29
29
|
|
30
30
|
new_object.attributes.should == @invoice_a.attributes
|
31
31
|
end
|
32
|
+
|
33
|
+
it "should generate correct mark as paid xml" do
|
34
|
+
hash = Hash.from_xml( Caren::Store::Invoice.mark_as_paid_xml("cash","test") )
|
35
|
+
hash["invoice"]["payment_method"].should == "cash"
|
36
|
+
hash["invoice"]["payment_method_description"].should == "test"
|
37
|
+
end
|
32
38
|
|
33
39
|
end
|
34
40
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caren-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 5
|
9
|
-
-
|
10
|
-
version: 0.5.
|
9
|
+
- 9
|
10
|
+
version: 0.5.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Andre Foeken
|