friendly_id_globalize3 3.2.1.3 → 3.2.1.4

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.
@@ -9,6 +9,7 @@ class Slug < ::ActiveRecord::Base
9
9
  named_scope :similar_to, lambda {|slug| {:conditions => {
10
10
  :name => slug.name,
11
11
  :scope => slug.scope,
12
+ :locale => slug.locale,
12
13
  :sluggable_type => slug.sluggable_type
13
14
  },
14
15
  :order => "sequence ASC"
@@ -50,7 +51,9 @@ class Slug < ::ActiveRecord::Base
50
51
  # If we're renaming back to a previously used friendly_id, delete the
51
52
  # slug so that we can recycle the name without having to use a sequence.
52
53
  def enable_name_reversion
53
- sluggable.slugs.find_all_by_name_and_scope(name, scope).each { |slug| slug.destroy }
54
+ slugs = sluggable.slugs.where(:name => name).where(:scope => scope)
55
+ slugs = slugs.where(:locale => locale) if sluggable.friendly_id_config.class.locales_used?
56
+ slugs.each(&:destroy) unless slugs.empty?
54
57
  end
55
58
 
56
59
  def friendly_id_with_sequence
@@ -6,7 +6,9 @@ module FriendlyId
6
6
  base.class_eval do
7
7
  has_many :slugs, :order => 'id DESC', :as => :sluggable, :dependent => :destroy
8
8
  has_one :slug, :order => 'id DESC', :as => :sluggable, :dependent => :destroy,
9
- :conditions => (proc{ {:locale => (Thread.current[:globalize_locale] || ::I18n.locale)} } if friendly_id_config.class.locales_used?)
9
+ :conditions => (proc{ {
10
+ :locale => (Thread.current[:globalize_locale] || ::I18n.locale)
11
+ } } if friendly_id_config.class.locales_used?)
10
12
  before_save :build_a_slug
11
13
  after_save :set_slug_cache
12
14
  after_update :update_scope
@@ -30,7 +30,7 @@ module FriendlyId
30
30
  :include => :slug,
31
31
  :limit => (ENV["LIMIT"] || 100).to_i,
32
32
  :offset => 0,
33
- :order => ENV["ORDER"] || "#{klass.table_name}.id ASC",
33
+ :order => ENV["ORDER"] || "#{klass.table_name}.#{klass.primary_key} ASC",
34
34
  }.merge(task_options || {})
35
35
 
36
36
  while records = find(:all, options) do
@@ -3,7 +3,7 @@ module FriendlyId
3
3
  MAJOR = 3
4
4
  MINOR = 2
5
5
  TINY = 1
6
- BUILD = 3
6
+ BUILD = 4
7
7
  STRING = [MAJOR, MINOR, TINY, BUILD].compact.join('.')
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,75 +1,74 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: friendly_id_globalize3
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.2.1.4
4
5
  prerelease:
5
- version: 3.2.1.3
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Norman Clarke
9
9
  - Adrian Mugnolo
10
10
  - Emilio Tagua
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
-
15
- date: 2011-04-19 00:00:00 Z
16
- dependencies:
17
- - !ruby/object:Gem::Dependency
14
+ date: 2011-06-25 00:00:00.000000000 +12:00
15
+ default_executable:
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
18
  name: babosa
19
- prerelease: false
20
- requirement: &id001 !ruby/object:Gem::Requirement
19
+ requirement: &2156825120 !ruby/object:Gem::Requirement
21
20
  none: false
22
- requirements:
21
+ requirements:
23
22
  - - ~>
24
- - !ruby/object:Gem::Version
23
+ - !ruby/object:Gem::Version
25
24
  version: 0.3.0
26
25
  type: :runtime
27
- version_requirements: *id001
28
- - !ruby/object:Gem::Dependency
29
- name: activerecord
30
26
  prerelease: false
31
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ version_requirements: *2156825120
28
+ - !ruby/object:Gem::Dependency
29
+ name: activerecord
30
+ requirement: &2156852760 !ruby/object:Gem::Requirement
32
31
  none: false
33
- requirements:
32
+ requirements:
34
33
  - - ~>
35
- - !ruby/object:Gem::Version
34
+ - !ruby/object:Gem::Version
36
35
  version: 3.0.0
37
36
  type: :development
38
- version_requirements: *id002
39
- - !ruby/object:Gem::Dependency
40
- name: mocha
41
37
  prerelease: false
42
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ version_requirements: *2156852760
39
+ - !ruby/object:Gem::Dependency
40
+ name: mocha
41
+ requirement: &2156852300 !ruby/object:Gem::Requirement
43
42
  none: false
44
- requirements:
43
+ requirements:
45
44
  - - ~>
46
- - !ruby/object:Gem::Version
47
- version: "0.9"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.9'
48
47
  type: :development
49
- version_requirements: *id003
50
- - !ruby/object:Gem::Dependency
51
- name: sqlite3
52
48
  prerelease: false
53
- requirement: &id004 !ruby/object:Gem::Requirement
49
+ version_requirements: *2156852300
50
+ - !ruby/object:Gem::Dependency
51
+ name: sqlite3
52
+ requirement: &2156851840 !ruby/object:Gem::Requirement
54
53
  none: false
55
- requirements:
54
+ requirements:
56
55
  - - ~>
57
- - !ruby/object:Gem::Version
58
- version: "1.3"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.3'
59
58
  type: :development
60
- version_requirements: *id004
61
- description: " FriendlyId is the \"Swiss Army bulldozer\" of slugging and permalink plugins\n for Ruby on Rails. It allows you to create pretty URL's and work with\n human-friendly strings as if they were numeric ids for ActiveRecord models.\n"
62
- email:
59
+ prerelease: false
60
+ version_requirements: *2156851840
61
+ description: ! " FriendlyId is the \"Swiss Army bulldozer\" of slugging and permalink
62
+ plugins\n for Ruby on Rails. It allows you to create pretty URL's and work with\n
63
+ \ human-friendly strings as if they were numeric ids for ActiveRecord models.\n"
64
+ email:
63
65
  - norman@njclarke.com
64
66
  - adrian@mugnolo.com
65
67
  - miloops@gmail.com
66
68
  executables: []
67
-
68
69
  extensions: []
69
-
70
70
  extra_rdoc_files: []
71
-
72
- files:
71
+ files:
73
72
  - lib/friendly_id/active_record.rb
74
73
  - lib/friendly_id/active_record_adapter/configuration.rb
75
74
  - lib/friendly_id/active_record_adapter/finders.rb
@@ -128,34 +127,32 @@ files:
128
127
  - extras/template-gem.rb
129
128
  - extras/template-plugin.rb
130
129
  - .gemtest
130
+ has_rdoc: true
131
131
  homepage: http://norman.github.com/friendly_id
132
132
  licenses: []
133
-
134
133
  post_install_message:
135
134
  rdoc_options: []
136
-
137
- require_paths:
135
+ require_paths:
138
136
  - lib
139
- required_ruby_version: !ruby/object:Gem::Requirement
137
+ required_ruby_version: !ruby/object:Gem::Requirement
140
138
  none: false
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- version: "0"
145
- required_rubygems_version: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
146
144
  none: false
147
- requirements:
148
- - - ">="
149
- - !ruby/object:Gem::Version
150
- version: "0"
145
+ requirements:
146
+ - - ! '>='
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
151
149
  requirements: []
152
-
153
150
  rubyforge_project: friendly-id
154
- rubygems_version: 1.7.2
151
+ rubygems_version: 1.6.2
155
152
  signing_key:
156
153
  specification_version: 3
157
154
  summary: A comprehensive slugging and pretty-URL plugin. Fork for globalize3 support.
158
- test_files:
155
+ test_files:
159
156
  - test/active_record_adapter/basic_slugged_model_test.rb
160
157
  - test/active_record_adapter/cached_slug_test.rb
161
158
  - test/active_record_adapter/custom_normalizer_test.rb