acts_more_seo 0.4.3 → 1

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f08c3bede0d31c1308f305c064c968dc0d87dd38
4
+ data.tar.gz: c2cabffcb04a922af38fa87b55ed762ac0f2d94c
5
+ SHA512:
6
+ metadata.gz: 38bb4fc54d82262168ea60e8c9528eb077657b71ba5248a1eb2d780de28b73e416d17f47580ceca2c1106fb65cbbbdd62962440ad28dcfa239ce09c8808c591d
7
+ data.tar.gz: e930f8f58c5e8e43955c24c90fef8eceab5195593ac8f07090293a7025440ef24bd9015205edb3b28989425d96e58c969e76667a8bf1db3b63a881cc1c2b0293
data/CHANGELOG.rdoc CHANGED
@@ -28,3 +28,5 @@ Backward compatibility improvements
28
28
  * Multiply pauses fix
29
29
  = Version 0.4.3
30
30
  * Casting non-string types to string before creating url
31
+ = Version 1.0.0
32
+ = Rails 4 support (no backward compatibility)
data/Gemfile CHANGED
@@ -1,2 +1,3 @@
1
1
  source "http://rubygems.org"
2
2
  gemspec
3
+ gem 'activerecord', '>= 4.0.0', '< 4.1'
data/Rakefile CHANGED
@@ -3,13 +3,13 @@ require 'rubygems'
3
3
  require 'rake'
4
4
  require 'echoe'
5
5
 
6
- Echoe.new('acts_more_seo', '0.4.3') do |p|
6
+ Echoe.new('acts_more_seo', '1') do |p|
7
7
  p.description = "Gem makes your ActiveRecord models more SEO friendly. Changes URL to look way better"
8
- p.url = "https://github.com/mensfeld/Css-Image-Embedder"
8
+ p.url = "https://github.com/mensfeld/Acts-more-SEO"
9
9
  p.author = "Maciej Mensfeld"
10
10
  p.email = "maciej@mensfeld.pl"
11
11
  p.ignore_pattern = ["tmp/*", "script/*"]
12
12
  p.dependencies = ["babosa"]
13
- p.development_dependencies = ["rspec >=2.0.0", "activerecord"]
13
+ p.development_dependencies = ["rspec >=2.0.0", "activerecord >=4.0.0"]
14
14
  end
15
15
 
@@ -2,37 +2,37 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "acts_more_seo"
5
- s.version = "0.4.3"
5
+ s.version = "1"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Maciej Mensfeld"]
9
- s.date = "2013-01-01"
9
+ s.date = "2013-06-27"
10
10
  s.description = "Gem makes your ActiveRecord models more SEO friendly. Changes URL to look way better"
11
11
  s.email = "maciej@mensfeld.pl"
12
12
  s.extra_rdoc_files = ["CHANGELOG.rdoc", "README.md", "lib/acts_more_seo.rb", "lib/generators/acts_more_seo/install_generator.rb", "lib/generators/acts_more_seo/templates/create_seo_history_migration.rb", "lib/seo_finder.rb", "lib/seo_formatter.rb", "lib/seo_history.rb", "lib/string_ext.rb"]
13
13
  s.files = ["CHANGELOG.rdoc", "Gemfile", "MIT-LICENSE", "Manifest", "README.md", "Rakefile", "acts_more_seo.gemspec", "init.rb", "lib/acts_more_seo.rb", "lib/generators/acts_more_seo/install_generator.rb", "lib/generators/acts_more_seo/templates/create_seo_history_migration.rb", "lib/seo_finder.rb", "lib/seo_formatter.rb", "lib/seo_history.rb", "lib/string_ext.rb", "spec/acts_more_seo_spec.rb", "spec/spec_helper.rb"]
14
- s.homepage = "https://github.com/mensfeld/Css-Image-Embedder"
14
+ s.homepage = "https://github.com/mensfeld/Acts-more-SEO"
15
15
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Acts_more_seo", "--main", "README.md"]
16
16
  s.require_paths = ["lib"]
17
17
  s.rubyforge_project = "acts_more_seo"
18
- s.rubygems_version = "1.8.10"
18
+ s.rubygems_version = "2.0.0"
19
19
  s.summary = "Gem makes your ActiveRecord models more SEO friendly. Changes URL to look way better"
20
20
 
21
21
  if s.respond_to? :specification_version then
22
- s.specification_version = 3
22
+ s.specification_version = 4
23
23
 
24
24
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
25
  s.add_runtime_dependency(%q<babosa>, [">= 0"])
26
26
  s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
27
- s.add_development_dependency(%q<activerecord>, [">= 0"])
27
+ s.add_development_dependency(%q<activerecord>, [">= 4.0.0"])
28
28
  else
29
29
  s.add_dependency(%q<babosa>, [">= 0"])
30
30
  s.add_dependency(%q<rspec>, [">= 2.0.0"])
31
- s.add_dependency(%q<activerecord>, [">= 0"])
31
+ s.add_dependency(%q<activerecord>, [">= 4.0.0"])
32
32
  end
33
33
  else
34
34
  s.add_dependency(%q<babosa>, [">= 0"])
35
35
  s.add_dependency(%q<rspec>, [">= 2.0.0"])
36
- s.add_dependency(%q<activerecord>, [">= 0"])
36
+ s.add_dependency(%q<activerecord>, [">= 4.0.0"])
37
37
  end
38
38
  end
data/init.rb CHANGED
@@ -1,2 +1 @@
1
1
  require 'acts_more_seo'
2
-
data/lib/seo_finder.rb CHANGED
@@ -35,9 +35,9 @@ module Acts
35
35
  # Try to find element in an instance class table
36
36
  def search_in_table(name)
37
37
  if @klass.seo_use_id
38
- @klass.find_by_id(name)
38
+ @klass.find_by(:id => name)
39
39
  else
40
- @klass.find_by_seo_url name, :first
40
+ @klass.find_by(:seo_url => name)
41
41
  end
42
42
  end
43
43
 
@@ -47,14 +47,14 @@ module Acts
47
47
  if @klass.seo_use_id
48
48
  @klass.find(name)
49
49
  else
50
- @klass.find_by_seo_url! name, :first
50
+ @klass.find_by!(:seo_url => name)
51
51
  end
52
52
  end
53
53
 
54
54
  # Try to find element in its seo history
55
55
  def search_in_history(name)
56
56
  sql = 'seo_url = ? AND seo_historable_type = ?'
57
- ret = Acts::MoreSeo::SeoHistory.where(sql, name, @klass.to_s).limit(1).first
57
+ ret = Acts::MoreSeo::SeoHistory.where(sql, name, @klass.to_s).first
58
58
  ret = ret.seo_historable if ret
59
59
  ret
60
60
  end
@@ -4,26 +4,26 @@ require 'spec_helper'
4
4
  ROOT = File.expand_path(File.dirname(__FILE__))
5
5
 
6
6
  class CoolElement < ActiveRecord::Base
7
- acts_more_seo
7
+ acts_more_seo
8
8
  end
9
9
 
10
10
  class CoolerElement < ActiveRecord::Base
11
- acts_more_seo :title
11
+ acts_more_seo :title
12
12
  end
13
13
 
14
14
  class SpecialElement < ActiveRecord::Base
15
- acts_more_seo :columns => [:name, :surname, :title]
15
+ acts_more_seo :columns => [:name, :surname, :title]
16
16
  end
17
17
 
18
18
  class BestElement < ActiveRecord::Base
19
- acts_more_seo :columns => [:name, :surname, :title], :use_id => false
19
+ acts_more_seo :columns => [:name, :surname, :title], :use_id => false
20
20
  end
21
21
 
22
22
  class HistorableElement < ActiveRecord::Base
23
- acts_more_seo :columns => :name,
24
- :use_id => false,
25
- :history => true,
26
- :case_sensitive => true
23
+ acts_more_seo :columns => :name,
24
+ :use_id => false,
25
+ :history => true,
26
+ :case_sensitive => true
27
27
  end
28
28
 
29
29
  class IntegerElement < ActiveRecord::Base
@@ -40,12 +40,12 @@ describe CoolElement do
40
40
  a.name.to_url.should == 'kraj-zelaza'
41
41
  end
42
42
 
43
- context 'when we add some pauses in the name' do
44
- it "should replace them and leave only one" do
45
- a = subject.create(:name => 'Kraj - Żelaza')
46
- a.name.to_url.should == 'kraj-zelaza'
47
- end
48
- end
43
+ context 'when we add some pauses in the name' do
44
+ it "should replace them and leave only one" do
45
+ a = subject.create(:name => 'Kraj - Żelaza')
46
+ a.name.to_url.should == 'kraj-zelaza'
47
+ end
48
+ end
49
49
  end
50
50
 
51
51
  context "when we have a class which has use_id => true" do
@@ -100,7 +100,7 @@ describe CoolerElement do
100
100
 
101
101
  it "should raise error when there is no element" do
102
102
  a = subject.create
103
- lambda { subject.find_by_seo!(a.id+1) }.should raise_error(ActiveRecord::RecordNotFound)
103
+ lambda { subject.find_by_seo!(a.id+1) }.should raise_error(ActiveRecord::RecordNotFound)
104
104
  end
105
105
  end
106
106
 
@@ -142,8 +142,8 @@ describe SpecialElement do
142
142
 
143
143
  context "when there are all the params" do
144
144
  it "should return nice url" do
145
- a = subject.create({:name => 'maciej', :surname => 'mensfeld', :title => 'test abc'})
146
- a.to_param.should eql("#{a.id}-maciej-mensfeld-test-abc")
145
+ a = subject.create({:name => 'maciej', :surname => 'mensfeld', :title => 'test abc'})
146
+ a.to_param.should eql("#{a.id}-maciej-mensfeld-test-abc")
147
147
  end
148
148
  end
149
149
  end
@@ -184,10 +184,10 @@ describe BestElement do
184
184
 
185
185
  context "when there are all the params" do
186
186
  it "should return nice url" do
187
- a = subject.create({:name => 'maciej', :surname => 'mensfeld', :title => 'test abc'})
188
- a.seo_url.should eql("maciej-mensfeld-test-abc")
189
- a.reload
190
- a.seo_url.should eql("maciej-mensfeld-test-abc")
187
+ a = subject.create({:name => 'maciej', :surname => 'mensfeld', :title => 'test abc'})
188
+ a.seo_url.should eql("maciej-mensfeld-test-abc")
189
+ a.reload
190
+ a.seo_url.should eql("maciej-mensfeld-test-abc")
191
191
  end
192
192
  end
193
193
 
@@ -202,22 +202,22 @@ describe BestElement do
202
202
 
203
203
  context "when updating object" do
204
204
  it "should have refreshed seo_url" do
205
- a = subject.create({:name => 'mensfeld', :title => 'test abc'})
206
- a.seo_url.should eql("mensfeld-test-abc")
207
- a.name = 'kowalski'
208
- a.save
209
- a.seo_url.should eql("kowalski-test-abc")
210
- subject.find_by_seo("kowalski-test-abc").should eql(a)
205
+ a = subject.create({:name => 'mensfeld', :title => 'test abc'})
206
+ a.seo_url.should eql("mensfeld-test-abc")
207
+ a.name = 'kowalski'
208
+ a.save
209
+ a.seo_url.should eql("kowalski-test-abc")
210
+ subject.find_by_seo("kowalski-test-abc").should eql(a)
211
211
  end
212
212
  end
213
213
 
214
214
  context "when we have two objects" do
215
215
  it "should assing to the second - seo url with id" do
216
- a = subject.create({:name => 'mensfeld', :title => 'test abc'})
217
- b = subject.create({:name => 'mensfeld ', :title => 'test abc'})
218
- a.seo_url.should eql("mensfeld-test-abc")
219
- b.reload
220
- b.seo_url.should eql("#{b.id}-mensfeld-test-abc")
216
+ a = subject.create({:name => 'mensfeld', :title => 'test abc'})
217
+ b = subject.create({:name => 'mensfeld ', :title => 'test abc'})
218
+ a.seo_url.should eql("mensfeld-test-abc")
219
+ b.reload
220
+ b.seo_url.should eql("#{b.id}-mensfeld-test-abc")
221
221
  end
222
222
 
223
223
  context "and we change name in a second one" do
metadata CHANGED
@@ -1,49 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_more_seo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
5
- prerelease:
4
+ version: '1'
6
5
  platform: ruby
7
6
  authors:
8
7
  - Maciej Mensfeld
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-01-01 00:00:00.000000000 Z
11
+ date: 2013-06-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: babosa
16
- requirement: &20812460 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *20812460
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: rspec
27
- requirement: &20811840 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - '>='
31
32
  - !ruby/object:Gem::Version
32
33
  version: 2.0.0
33
34
  type: :development
34
35
  prerelease: false
35
- version_requirements: *20811840
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: 2.0.0
36
41
  - !ruby/object:Gem::Dependency
37
42
  name: activerecord
38
- requirement: &20811140 !ruby/object:Gem::Requirement
39
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
40
44
  requirements:
41
- - - ! '>='
45
+ - - '>='
42
46
  - !ruby/object:Gem::Version
43
- version: '0'
47
+ version: 4.0.0
44
48
  type: :development
45
49
  prerelease: false
46
- version_requirements: *20811140
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 4.0.0
47
55
  description: Gem makes your ActiveRecord models more SEO friendly. Changes URL to
48
56
  look way better
49
57
  email: maciej@mensfeld.pl
@@ -77,8 +85,9 @@ files:
77
85
  - lib/string_ext.rb
78
86
  - spec/acts_more_seo_spec.rb
79
87
  - spec/spec_helper.rb
80
- homepage: https://github.com/mensfeld/Css-Image-Embedder
88
+ homepage: https://github.com/mensfeld/Acts-more-SEO
81
89
  licenses: []
90
+ metadata: {}
82
91
  post_install_message:
83
92
  rdoc_options:
84
93
  - --line-numbers
@@ -90,22 +99,20 @@ rdoc_options:
90
99
  require_paths:
91
100
  - lib
92
101
  required_ruby_version: !ruby/object:Gem::Requirement
93
- none: false
94
102
  requirements:
95
- - - ! '>='
103
+ - - '>='
96
104
  - !ruby/object:Gem::Version
97
105
  version: '0'
98
106
  required_rubygems_version: !ruby/object:Gem::Requirement
99
- none: false
100
107
  requirements:
101
- - - ! '>='
108
+ - - '>='
102
109
  - !ruby/object:Gem::Version
103
110
  version: '1.2'
104
111
  requirements: []
105
112
  rubyforge_project: acts_more_seo
106
- rubygems_version: 1.8.10
113
+ rubygems_version: 2.0.0
107
114
  signing_key:
108
- specification_version: 3
115
+ specification_version: 4
109
116
  summary: Gem makes your ActiveRecord models more SEO friendly. Changes URL to look
110
117
  way better
111
118
  test_files: []