nested_set 1.6.5 → 1.6.6

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.6.5
1
+ 1.6.6
@@ -59,6 +59,12 @@ module CollectiveIdea #:nodoc:
59
59
  class_attribute :acts_as_nested_set_options
60
60
  self.acts_as_nested_set_options = options
61
61
 
62
+ class_attribute :use_depth
63
+ self.use_depth = self.base_class.column_names.include?(self.base_class.acts_as_nested_set_options[:depth_column])
64
+
65
+ #backward compatibility
66
+ alias_method :depth?, :use_depth
67
+
62
68
  unless self.is_a?(ClassMethods)
63
69
  include Comparable
64
70
  include Columns
@@ -14,9 +14,8 @@ module CollectiveIdea #:nodoc:
14
14
  scope_string.blank? ? "1 = 1" : scope_string
15
15
  end
16
16
 
17
- # Check is model has depth column
18
- def depth?
19
- self.respond_to?(:depth)
17
+ def depth
18
+ super.to_i if depth?
20
19
  end
21
20
 
22
21
  # Update cached_level attribute
@@ -24,7 +23,7 @@ module CollectiveIdea #:nodoc:
24
23
  self.depth = level
25
24
  if depth_changed?
26
25
  self.self_and_descendants.
27
- update_all(["#{self.class.quoted_depth_column_name} = #{self.class.quoted_depth_column_name} + ?",
26
+ update_all(["#{self.class.quoted_depth_column_name} = COALESCE(#{self.class.quoted_depth_column_name}, 0) + ?",
28
27
  depth_change[1] - depth_change[0].to_i])
29
28
  end
30
29
  end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{nested_set}
8
- s.version = "1.6.5"
8
+ s.version = "1.6.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Brandon Keepers", "Daniel Morrison"]
12
- s.date = %q{2011-05-24}
12
+ s.date = %q{2011-05-30}
13
13
  s.description = %q{An awesome nested set implementation for Active Record}
14
14
  s.email = %q{info@collectiveidea.com}
15
15
  s.extra_rdoc_files = [
@@ -14,7 +14,7 @@ top_level:
14
14
  name: Top Level
15
15
  lft: 1
16
16
  rgt: 10
17
- depth: 0
17
+ #depth: NULL
18
18
  child_1:
19
19
  id: 2
20
20
  name: Child 1
@@ -5,13 +5,13 @@ class Note < ActiveRecord::Base
5
5
  end
6
6
 
7
7
  class Default < ActiveRecord::Base
8
- acts_as_nested_set
9
8
  set_table_name 'categories'
9
+ acts_as_nested_set
10
10
  end
11
11
 
12
12
  class ScopedCategory < ActiveRecord::Base
13
- acts_as_nested_set :scope => :organization
14
13
  set_table_name 'categories'
14
+ acts_as_nested_set :scope => :organization
15
15
  end
16
16
 
17
17
  class RenamedColumns < ActiveRecord::Base
@@ -203,15 +203,13 @@ class NestedSetTest < ActiveSupport::TestCase
203
203
  end
204
204
 
205
205
  def test_depth_after_move
206
- categories(:child_2).move_to_root
207
-
208
- assert_equal 0, categories(:child_2).depth
209
- assert_equal 1, categories(:child_2_1).depth
206
+ assert_equal 0, categories(:top_level).depth
207
+ assert_equal 1, categories(:child_2).depth
210
208
 
211
- categories(:child_2).move_to_child_of(categories(:top_level_2))
209
+ categories(:top_level).move_to_child_of(categories(:top_level_2))
212
210
 
213
- assert_equal 1, categories(:child_2).depth
214
- assert_equal 2, categories(:child_2_1).reload.depth
211
+ assert_equal 1, categories(:top_level).reload.depth
212
+ assert_equal 2, categories(:child_2).reload.depth
215
213
  end
216
214
 
217
215
  def test_has_children?
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nested_set
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.5
4
+ version: 1.6.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,12 +10,12 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-05-24 00:00:00.000000000 +04:00
13
+ date: 2011-05-30 00:00:00.000000000 +04:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: railties
18
- requirement: &11153540 !ruby/object:Gem::Requirement
18
+ requirement: &9314280 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ! '>='
@@ -23,10 +23,10 @@ dependencies:
23
23
  version: 3.0.0
24
24
  type: :runtime
25
25
  prerelease: false
26
- version_requirements: *11153540
26
+ version_requirements: *9314280
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activerecord
29
- requirement: &11152400 !ruby/object:Gem::Requirement
29
+ requirement: &9313680 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ! '>='
@@ -34,10 +34,10 @@ dependencies:
34
34
  version: 3.0.0
35
35
  type: :runtime
36
36
  prerelease: false
37
- version_requirements: *11152400
37
+ version_requirements: *9313680
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: sqlite3-ruby
40
- requirement: &11151640 !ruby/object:Gem::Requirement
40
+ requirement: &9313140 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ! '>='
@@ -45,10 +45,10 @@ dependencies:
45
45
  version: '0'
46
46
  type: :development
47
47
  prerelease: false
48
- version_requirements: *11151640
48
+ version_requirements: *9313140
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: actionpack
51
- requirement: &11148600 !ruby/object:Gem::Requirement
51
+ requirement: &9312540 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
54
  - - ! '>='
@@ -56,10 +56,10 @@ dependencies:
56
56
  version: 3.0.0
57
57
  type: :development
58
58
  prerelease: false
59
- version_requirements: *11148600
59
+ version_requirements: *9312540
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: bench_press
62
- requirement: &11147700 !ruby/object:Gem::Requirement
62
+ requirement: &9312020 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
65
  - - ! '>='
@@ -67,10 +67,10 @@ dependencies:
67
67
  version: 0.3.1
68
68
  type: :development
69
69
  prerelease: false
70
- version_requirements: *11147700
70
+ version_requirements: *9312020
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: jeweler
73
- requirement: &11146880 !ruby/object:Gem::Requirement
73
+ requirement: &9311440 !ruby/object:Gem::Requirement
74
74
  none: false
75
75
  requirements:
76
76
  - - ! '>='
@@ -78,7 +78,7 @@ dependencies:
78
78
  version: '0'
79
79
  type: :development
80
80
  prerelease: false
81
- version_requirements: *11146880
81
+ version_requirements: *9311440
82
82
  description: An awesome nested set implementation for Active Record
83
83
  email: info@collectiveidea.com
84
84
  executables: []
@@ -127,7 +127,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
127
127
  version: '0'
128
128
  segments:
129
129
  - 0
130
- hash: -1622325140072455651
130
+ hash: 814659255794792951
131
131
  required_rubygems_version: !ruby/object:Gem::Requirement
132
132
  none: false
133
133
  requirements: