awesome_nested_set: split highest rgt reader method (#6579)
git-svn-id: http://svn.redmine.org/redmine/trunk@13010 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
3c83d1c646
commit
755108566c
|
@ -538,15 +538,18 @@ module CollectiveIdea #:nodoc:
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# on creation, set automatically lft and rgt to the end of the tree
|
def right_most_bound
|
||||||
def set_default_left_and_right
|
right_most_node =
|
||||||
highest_right_row =
|
|
||||||
self.class.base_class.unscoped.
|
self.class.base_class.unscoped.
|
||||||
order("#{quoted_right_column_full_name} desc").limit(1).lock(true).first
|
order("#{quoted_right_column_full_name} desc").limit(1).lock(true).first
|
||||||
maxright = highest_right_row ? (highest_right_row[right_column_name] || 0) : 0
|
right_most_node ? right_most_node[right_column_name] : 0
|
||||||
|
end
|
||||||
|
|
||||||
|
# on creation, set automatically lft and rgt to the end of the tree
|
||||||
|
def set_default_left_and_right
|
||||||
# adds the new node to the right of all existing nodes
|
# adds the new node to the right of all existing nodes
|
||||||
self[left_column_name] = maxright + 1
|
self[left_column_name] = right_most_bound + 1
|
||||||
self[right_column_name] = maxright + 2
|
self[right_column_name] = right_most_bound + 2
|
||||||
end
|
end
|
||||||
|
|
||||||
def in_tenacious_transaction(&block)
|
def in_tenacious_transaction(&block)
|
||||||
|
|
Loading…
Reference in New Issue