Fix structure position

This commit is contained in:
chris committed 2013-10-08 12:33:24 +08:00
1 parent fe1869199e
commit 5328a26440
4 files changed
+18 -12

No files matched your search

+10 -8
View File
@@ -46,15 +46,17 @@ class Item
def shift_to(new_parent, position)
position = position.to_i
unless self.parent_id.to_s.eql?(new_parent) && self.position == position
new_parent = Item.find(new_parent)
current_position_sibling = find_by_parent_and_position(new_parent, position)
if current_position_sibling
move_above(current_position_sibling)
elsif self.parent != new_parent
self.parent = new_parent
save
new_parent = Item.find(new_parent)
current_position_sibling = find_by_parent_and_position(new_parent, position)
if current_position_sibling
if self.position > current_position_sibling.position
self.move_above(current_position_sibling)
else
self.move_below(current_position_sibling)
end
elsif self.parent != new_parent
self.parent = new_parent
save
end
end