comparison app/controllers/issues_controller.rb @ 84:432bb11e0390 cannam

Merge from branch "luisf"
author Chris Cannam
date Thu, 16 Dec 2010 10:03:20 +0000
parents 7c828d63cb06
children b0086cb55640 b859cc0c4fa1
comparison
equal deleted inserted replaced
76:8a49eabbb30a 84:432bb11e0390
130 call_hook(:controller_issues_new_before_save, { :params => params, :issue => @issue }) 130 call_hook(:controller_issues_new_before_save, { :params => params, :issue => @issue })
131 if @issue.save 131 if @issue.save
132 attachments = Attachment.attach_files(@issue, params[:attachments]) 132 attachments = Attachment.attach_files(@issue, params[:attachments])
133 render_attachment_warning_if_needed(@issue) 133 render_attachment_warning_if_needed(@issue)
134 flash[:notice] = l(:notice_successful_create) 134 flash[:notice] = l(:notice_successful_create)
135
135 call_hook(:controller_issues_new_after_save, { :params => params, :issue => @issue}) 136 call_hook(:controller_issues_new_after_save, { :params => params, :issue => @issue})
137
138 # Adds user to watcher's list
139 @issue.add_watcher(User.current)
140
141 # Also adds the assignee to the watcher's list
142 if params[:issue][:assigned_to_id] && !params[:issue][:assigned_to_id].empty?:
143 unless @issue.watcher_ids.include?(params[:issue][:assigned_to_id]):
144 @issue.add_watcher(User.find(params[:issue][:assigned_to_id]))
145 end
146 end
147
136 respond_to do |format| 148 respond_to do |format|
137 format.html { 149 format.html {
138 redirect_to(params[:continue] ? { :action => 'new', :project_id => @project, :issue => {:tracker_id => @issue.tracker, :parent_issue_id => @issue.parent_issue_id}.reject {|k,v| v.nil?} } : 150 redirect_to(params[:continue] ? { :action => 'new', :project_id => @project, :issue => {:tracker_id => @issue.tracker, :parent_issue_id => @issue.parent_issue_id}.reject {|k,v| v.nil?} } :
139 { :action => 'show', :id => @issue }) 151 { :action => 'show', :id => @issue })
140 } 152 }
272 @time_entry.attributes = params[:time_entry] 284 @time_entry.attributes = params[:time_entry]
273 285
274 @notes = params[:notes] || (params[:issue].present? ? params[:issue][:notes] : nil) 286 @notes = params[:notes] || (params[:issue].present? ? params[:issue][:notes] : nil)
275 @issue.init_journal(User.current, @notes) 287 @issue.init_journal(User.current, @notes)
276 @issue.safe_attributes = params[:issue] 288 @issue.safe_attributes = params[:issue]
289
290 # tests if the the user assigned_to_id
291 # is in this issues watcher's list
292 # if not, adds it.
293
294 if params[:issue][:assigned_to_id] && !params[:issue][:assigned_to_id].empty?:
295 unless @issue.watcher_ids.include?(params[:issue][:assigned_to_id]):
296 @issue.add_watcher(User.find(params[:issue][:assigned_to_id]))
297 end
298 end
299
300
277 end 301 end
278 302
279 # TODO: Refactor, lots of extra code in here 303 # TODO: Refactor, lots of extra code in here
280 # TODO: Changing tracker on an existing issue should not trigger this 304 # TODO: Changing tracker on an existing issue should not trigger this
281 def build_new_issue_from_params 305 def build_new_issue_from_params