nested_set 1.6.5 → 1.6.6

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.
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: