]> source.dussan.org Git - redmine.git/commitdiff
awesome_nested_set: split highest rgt reader method (#6579)
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 26 Mar 2014 01:48:04 +0000 (01:48 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 26 Mar 2014 01:48:04 +0000 (01:48 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@13010 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/plugins/awesome_nested_set/lib/awesome_nested_set/awesome_nested_set.rb

index 259de5a08730c64ad6ffed9bd058f0d418c41581..a6c7cf299b14925742a4e02edcbd33898ecacfe0 100644 (file)
@@ -538,15 +538,18 @@ module CollectiveIdea #:nodoc:
           end
         end
 
-        # on creation, set automatically lft and rgt to the end of the tree
-        def set_default_left_and_right
-          highest_right_row =
+        def right_most_bound
+          right_most_node =
             self.class.base_class.unscoped.
               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
-          self[left_column_name] = maxright + 1
-          self[right_column_name] = maxright + 2
+          self[left_column_name] = right_most_bound + 1
+          self[right_column_name] = right_most_bound + 2
         end
 
         def in_tenacious_transaction(&block)