if @removed status_message = t('todos.removed_predecessor', :successor => @successor.description, :predecessor => @predecessor.description) page.notify :notice, status_message, 5.0 # replace old predecessor with one without the successor page.replace dom_id(@predecessor), :partial => 'todos/todo', :locals => { :todo => @predecessor, :parent_container_type => parent_container_type } # regenerate predecessor family parents = @predecessor.predecessors until parents.empty? parent = parents.pop parents += parent.predecessors page[parent].replace_html :partial => 'todos/todo', :locals => { :todo => parent, :parent_container_type => parent_container_type } end # update display if pending->active if @successor.active? page[@successor].remove unless source_view_is_one_of(:todo, :context) page[empty_container_msg_div_id].hide unless empty_container_msg_div_id.nil? page.call "todoItems.ensureVisibleWithEffectAppear", "c#{@successor.context_id}" page.insert_html :bottom, item_container_id(@successor), :partial => 'todos/todo', :locals => { :todo => @successor, :parent_container_type => parent_container_type } page.visual_effect :highlight, dom_id(@successor, 'line'), {'startcolor' => "'#99ff99'"} end # update display if pending->deferred if @successor.deferred? page.replace dom_id(@successor), :partial => 'todos/todo', :locals => { :todo => @successor, :parent_container_type => parent_container_type } end page << "enable_rich_interaction();" else page.notify :error, t('todos.error_removing_dependency'), 8.0 end