From 4f10cad9ffdc508dbcecd477e93921367a69477d Mon Sep 17 00:00:00 2001 From: Mateusz Bajorski Date: Mon, 15 Jan 2018 07:46:19 +0100 Subject: Add Inherit quick action Closes #38450 --- app/services/quick_actions/interpret_service.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'app/services/quick_actions') diff --git a/app/services/quick_actions/interpret_service.rb b/app/services/quick_actions/interpret_service.rb index 1e9bd84e749..4abb936e14a 100644 --- a/app/services/quick_actions/interpret_service.rb +++ b/app/services/quick_actions/interpret_service.rb @@ -268,6 +268,24 @@ module QuickActions end end + desc 'Inherit (copy) labels and milestone from other issue' + explanation do |issue_id| + "Inherit (copy) labels and milestone from issue \"#{issue_id}\"." + end + params '#issue' + condition do + issuable.persisted? && + current_user.can?(:"update_#{issuable.to_ability_name}", issuable) + end + command :inherit do |issue_id| + issue = extract_references(issue_id, :issue).first + if issue.present? && issue.project_id == issuable.project_id + @updates[:add_label_ids] = issue.labels.map(&:id) + + @updates[:milestone_id] = issue.milestone.id if issue.milestone + end + end + desc 'Add a todo' explanation 'Adds a todo.' condition do -- cgit v1.2.3