algoliasearch-rails 1.1.2 → 1.1.3

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
  SHA1:
3
- metadata.gz: 5a27f4d775cf46b7172cc94edef1b5bfa617fb2d
4
- data.tar.gz: 84e4c3bd257180f153f00ab062179a89d3b02d6f
3
+ metadata.gz: 28e2a33f207e6f6d7f2c1bc4e3bf875ce6e422bb
4
+ data.tar.gz: 6668fdcaf13f41338546c65794006b71072e5a12
5
5
  SHA512:
6
- metadata.gz: 709129599d7506d0cd89b9d2dc2b43bbebfabe808ffc98562e3d90d113f9d0df7a8691d10c06916b5e50b1a17fe32da07d89c2f2edcefc688ee14c84a08c3148
7
- data.tar.gz: 5b367d3784bd64d623a0ec0338c475e601f4f022ecc6fa7255f322327c16fa706c3d93c920b6c3ab416e9d4012192fa87c1d62a0cdff40ad24ece43d82f8bbb8
6
+ metadata.gz: 0803d9705e833df8ba2e03ea59bddd9ae99e3b51e84e180aa20e328b0e7dfe1ad22d62b18b23dd204d4fbf82d75b5104b63d2db53b49728709a556f53d34236c
7
+ data.tar.gz: 559edd2efe42025cf102542f14ec90be69a93a89bbb70ffb955174a77048b768364e66181f0b353f9243993940d5450a58c0944526f36acc4e57da61fd656f20
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.2
1
+ 1.1.3
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "algoliasearch-rails"
8
- s.version = "1.1.2"
8
+ s.version = "1.1.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Algolia"]
12
- s.date = "2013-09-18"
12
+ s.date = "2013-09-19"
13
13
  s.description = "AlgoliaSearch integration to your favorite ORM"
14
14
  s.email = "contact@algolia.com"
15
15
  s.extra_rdoc_files = [
@@ -122,7 +122,7 @@ module AlgoliaSearch
122
122
  end
123
123
 
124
124
  def clear_index!
125
- @index.delete
125
+ @index.delete rescue "already deleted, not fatal"
126
126
  @index = nil
127
127
  init
128
128
  end
@@ -143,6 +143,15 @@ module AlgoliaSearch
143
143
  @index.set_settings(settings) if !settings.empty?
144
144
  end
145
145
 
146
+ def must_reindex?(object)
147
+ return true if object.id_changed?
148
+ attributes(object).each do |k, v|
149
+ changed_method = "#{k}_changed?"
150
+ return true if respond_to?(changed_method) && send(changed_method)
151
+ end
152
+ return false
153
+ end
154
+
146
155
  private
147
156
 
148
157
  def attributes(object)
@@ -177,7 +186,7 @@ module AlgoliaSearch
177
186
  end
178
187
 
179
188
  def perform_index_tasks
180
- return if !@auto_indexing || (respond_to?(:changed?) && !changed?)
189
+ return if !@auto_indexing || !self.class.must_reindex?(self)
181
190
  index!
182
191
  remove_instance_variable(:@auto_indexing) if instance_variable_defined?(:@auto_indexing)
183
192
  remove_instance_variable(:@synchronous) if instance_variable_defined?(:@synchronous)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: algoliasearch-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Algolia
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-18 00:00:00.000000000 Z
11
+ date: 2013-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json