bolseragency-ecircle 0.1.0 → 0.2.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.
- data/VERSION +1 -1
- data/ecircle.gemspec +4 -4
- data/lib/ecircle.rb +11 -4
- metadata +4 -4
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.2.0
|
data/ecircle.gemspec
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |s|
|
|
4
4
|
s.name = %q{ecircle}
|
|
5
|
-
s.version = "0.
|
|
5
|
+
s.version = "0.2.0"
|
|
6
6
|
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
8
8
|
s.authors = ["mattfawcett"]
|
|
9
|
-
s.date = %q{2009-06-
|
|
9
|
+
s.date = %q{2009-06-23}
|
|
10
10
|
s.email = %q{matt@bolseragency.com}
|
|
11
11
|
s.extra_rdoc_files = [
|
|
12
12
|
"LICENSE",
|
|
@@ -30,11 +30,11 @@ Gem::Specification.new do |s|
|
|
|
30
30
|
"synchronous/synchronousMappingRegistry.rb"
|
|
31
31
|
]
|
|
32
32
|
s.has_rdoc = true
|
|
33
|
-
s.homepage = %q{http://github.com/
|
|
33
|
+
s.homepage = %q{http://github.com/mattfawcett/ecircle}
|
|
34
34
|
s.rdoc_options = ["--charset=UTF-8"]
|
|
35
35
|
s.require_paths = ["lib"]
|
|
36
36
|
s.rubygems_version = %q{1.3.1}
|
|
37
|
-
s.summary = %q{Ruby library to
|
|
37
|
+
s.summary = %q{Ruby library to interfac with Ecircle API}
|
|
38
38
|
s.test_files = [
|
|
39
39
|
"spec/ecircle_spec.rb",
|
|
40
40
|
"spec/spec_helper.rb"
|
data/lib/ecircle.rb
CHANGED
|
@@ -41,7 +41,9 @@ module Ecircle
|
|
|
41
41
|
|
|
42
42
|
def method_missing(method_name, *args)
|
|
43
43
|
if method_name.to_s =~ /^.*=$/
|
|
44
|
-
|
|
44
|
+
@changed_attributes = [] if @changed_attributes.nil?
|
|
45
|
+
@changed_attributes << method_name.to_s.gsub('=','').to_sym
|
|
46
|
+
return instance_variable_set("@#{method_name.to_s.gsub('=','')}", args[0])
|
|
45
47
|
else
|
|
46
48
|
unless instance_variable_get("@#{method_name}").nil?
|
|
47
49
|
return instance_variable_get("@#{method_name}")
|
|
@@ -96,19 +98,24 @@ module Ecircle
|
|
|
96
98
|
return member
|
|
97
99
|
end
|
|
98
100
|
|
|
99
|
-
def to_xml
|
|
101
|
+
def to_xml
|
|
100
102
|
x = Builder::XmlMarkup.new
|
|
101
103
|
x.member do |member|
|
|
102
104
|
standard_attributes.each do |attribute|
|
|
103
105
|
val = self.send(attribute)
|
|
104
|
-
eval("member.#{attribute}('#{self.send(attribute)}')")
|
|
106
|
+
eval("member.#{attribute}('#{self.send(attribute)}')") if should_include_field_in_xml?(attribute) #if value is blank, only set if updating
|
|
105
107
|
end
|
|
106
108
|
custom_atributes.each do |attribute|
|
|
107
|
-
member.namedattr({:name => attribute}, self.send(attribute))
|
|
109
|
+
member.namedattr({:name => attribute}, self.send(attribute)) if should_include_field_in_xml?(attribute) #if value is blank, only set if updating
|
|
108
110
|
end
|
|
109
111
|
end
|
|
110
112
|
end
|
|
111
113
|
|
|
114
|
+
def should_include_field_in_xml?(attribute)
|
|
115
|
+
@changed_attributes = [] if @changed_attributes.nil?
|
|
116
|
+
@changed_attributes.include?(attribute) || attribute == :email
|
|
117
|
+
end
|
|
118
|
+
|
|
112
119
|
def custom_atributes
|
|
113
120
|
@custom_atributes ||= (@doc/"namedattr").collect { |field| field.attributes['name'].to_sym }
|
|
114
121
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bolseragency-ecircle
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- mattfawcett
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-06-
|
|
12
|
+
date: 2009-06-23 00:00:00 -07:00
|
|
13
13
|
default_executable:
|
|
14
14
|
dependencies: []
|
|
15
15
|
|
|
@@ -39,7 +39,7 @@ files:
|
|
|
39
39
|
- synchronous/synchronousDriver.rb
|
|
40
40
|
- synchronous/synchronousMappingRegistry.rb
|
|
41
41
|
has_rdoc: true
|
|
42
|
-
homepage: http://github.com/
|
|
42
|
+
homepage: http://github.com/mattfawcett/ecircle
|
|
43
43
|
post_install_message:
|
|
44
44
|
rdoc_options:
|
|
45
45
|
- --charset=UTF-8
|
|
@@ -63,7 +63,7 @@ rubyforge_project:
|
|
|
63
63
|
rubygems_version: 1.2.0
|
|
64
64
|
signing_key:
|
|
65
65
|
specification_version: 2
|
|
66
|
-
summary: Ruby library to
|
|
66
|
+
summary: Ruby library to interfac with Ecircle API
|
|
67
67
|
test_files:
|
|
68
68
|
- spec/ecircle_spec.rb
|
|
69
69
|
- spec/spec_helper.rb
|