Mercurial > hg > soundsoftware-site
comparison app/controllers/issues_controller.rb @ 71:7c828d63cb06 luisf
Feature #31: the assigned user is made a watcher of the issue.
author | luisf |
---|---|
date | Wed, 08 Dec 2010 15:14:02 +0000 |
parents | 35c1d1c098e6 |
children | b0086cb55640 b859cc0c4fa1 |
comparison
equal
deleted
inserted
replaced
70:35c1d1c098e6 | 71:7c828d63cb06 |
---|---|
135 | 135 |
136 call_hook(:controller_issues_new_after_save, { :params => params, :issue => @issue}) | 136 call_hook(:controller_issues_new_after_save, { :params => params, :issue => @issue}) |
137 | 137 |
138 # Adds user to watcher's list | 138 # Adds user to watcher's list |
139 @issue.add_watcher(User.current) | 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 | |
140 | 147 |
141 respond_to do |format| | 148 respond_to do |format| |
142 format.html { | 149 format.html { |
143 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?} } : |
144 { :action => 'show', :id => @issue }) | 151 { :action => 'show', :id => @issue }) |
277 @time_entry.attributes = params[:time_entry] | 284 @time_entry.attributes = params[:time_entry] |
278 | 285 |
279 @notes = params[:notes] || (params[:issue].present? ? params[:issue][:notes] : nil) | 286 @notes = params[:notes] || (params[:issue].present? ? params[:issue][:notes] : nil) |
280 @issue.init_journal(User.current, @notes) | 287 @issue.init_journal(User.current, @notes) |
281 @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 | |
282 end | 301 end |
283 | 302 |
284 # TODO: Refactor, lots of extra code in here | 303 # TODO: Refactor, lots of extra code in here |
285 # TODO: Changing tracker on an existing issue should not trigger this | 304 # TODO: Changing tracker on an existing issue should not trigger this |
286 def build_new_issue_from_params | 305 def build_new_issue_from_params |