# File lib/symetrie_com/acts_as_better_nested_set.rb, line 1065 def perform_reorder_of_children(ordered_ids, current) steps = calculate_reorder_steps(ordered_ids, current) steps.inject([]) do |result, (source, idx)| target = current[idx] if source.id != target.id source.swap(target, false) from = current.index(source) current[from], current[idx] = current[idx], current[from] result << source end result end end