a previous commit introduced a bug where hiding a project did not hide the todos in it. Fixes #832

This commit is contained in:
Reinier Balt 2009-01-24 22:13:19 +01:00
parent 8076f4fe72
commit 07426ebe54
5 changed files with 25 additions and 31 deletions

View file

@ -106,9 +106,9 @@ class ProjectsController < ApplicationController
def update
params['project'] ||= {}
if params['project']['state']
@state_changed = @project.state != params['project']['state']
@new_state = params['project']['state']
@state_changed = @project.state != @new_state
logger.info "@state_changed: #{@project.state} == #{params['project']['state']} != #{@state_changed}"
@project.transition_to(params['project']['state'])
params['project'].delete('state')
end
success_text = if params['field'] == 'name' && params['value']
@ -117,6 +117,7 @@ class ProjectsController < ApplicationController
end
@project.attributes = params['project']
if @project.save
@project.transition_to(@new_state) if @state_changed
if boolean_param('wants_render')
if (@project.hidden?)
@project_project_hidden_todo_counts = Hash.new

View file

@ -65,6 +65,7 @@ class TodosController < ApplicationController
@todo.context_id = context.id
end
@todo.update_state_from_project
@saved = @todo.save
unless (@saved == false) || p.tag_list.blank?
@todo.tag_with(p.tag_list)
@ -257,7 +258,10 @@ class TodosController < ApplicationController
end
@project_changed = @original_item_project_id != @todo.project_id
if (@project_changed && !@original_item_project_id.nil?) then @remaining_undone_in_project = current_user.projects.find(@original_item_project_id).not_done_todo_count; end
if (@project_changed && !@original_item_project_id.nil?) then
@todo.update_state_from_project
@remaining_undone_in_project = current_user.projects.find(@original_item_project_id).not_done_todo_count
end
determine_down_count
respond_to do |format|
format.js