faceted 1.3.2 → 1.3.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.2
1
+ 1.3.3
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "faceted"
8
- s.version = "1.3.2"
8
+ s.version = "1.3.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Corey Ehmke", "Max Thom Stahl"]
12
- s.date = "2013-03-11"
12
+ s.date = "2013-03-12"
13
13
  s.description = "Faceted provides set of tools, patterns, and modules for use in API implementations."
14
14
  s.email = "corey@trunkclub.com"
15
15
  s.extra_rdoc_files = [
@@ -51,11 +51,11 @@ module Faceted
51
51
  end
52
52
 
53
53
  def save
54
- return false unless schema_fields
55
- schema_fields.each{ |k| object.send("#{k}=", self.send(k)) if self.send(:settable_field?, k) }
54
+ return false unless schema_fields.present?
55
+ schema_fields.each{ |k| self.send(:object).send("#{k}=", self.send(k)) if self.send(:settable_field?, k) }
56
56
  self.success = object.save
57
57
  self.errors = object.errors && object.errors.full_messages
58
- self.reinitialize_with_object(object)
58
+ self.reinitialize_with_object(object) if self.success
59
59
  self.success
60
60
  end
61
61
 
@@ -76,12 +76,16 @@ module Faceted
76
76
 
77
77
  def object
78
78
  return unless self.class.klass
79
- @object = self.class.klass.where(find_by => self.send(find_by)).first || self.class.klass.new
79
+ if self.send(find_by).present?
80
+ @object ||= self.class.klass.where(find_by => self.send(find_by)).first
81
+ else
82
+ @object ||= self.class.klass.new
83
+ end
80
84
  end
81
85
 
82
86
  def object=(obj)
83
87
  @object = obj
84
- self.id = obj.id
88
+ self.id = obj.id if obj.id.present?
85
89
  end
86
90
 
87
91
  def settable_field?(field_name)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faceted
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2
4
+ version: 1.3.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-03-11 00:00:00.000000000 Z
13
+ date: 2013-03-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -214,7 +214,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
214
214
  version: '0'
215
215
  segments:
216
216
  - 0
217
- hash: 4094991155632847834
217
+ hash: 2816217041586490027
218
218
  required_rubygems_version: !ruby/object:Gem::Requirement
219
219
  none: false
220
220
  requirements: