Commit d08e1db93091418694130870406995f21502d478

Authored by AlexDenisov
1 parent d79592a7

Cleanup bulk issues update a bit

Showing 1 changed file with 11 additions and 8 deletions   Show diff stats
app/contexts/issues/bulk_update_context.rb
... ... @@ -8,6 +8,13 @@ module Issues
8 8 assignee_id = update_data[:assignee_id]
9 9 status = update_data[:status]
10 10  
  11 + unless status.present?
  12 + return {
  13 + count: 0,
  14 + success: false
  15 + }
  16 + end
  17 +
11 18 opts = {}
12 19 opts[:milestone_id] = milestone_id if milestone_id.present?
13 20 opts[:assignee_id] = assignee_id if assignee_id.present?
... ... @@ -15,16 +22,12 @@ module Issues
15 22 issues = Issue.where(id: issues_ids).all
16 23 issues = issues.select { |issue| can?(current_user, :modify_issue, issue) }
17 24  
  25 + new_state = :reopen
  26 + new_state = :close if status == 'closed'
  27 +
18 28 issues.each do |issue|
19 29 issue.update_attributes(opts)
20   -
21   - if status.present?
22   - if status == 'closed'
23   - issue.close
24   - else
25   - issue.reopen
26   - end
27   - end
  30 + issue.send new_state
28 31 end
29 32  
30 33 {
... ...