Add support to group labels to SlashCommands::InterpretService
This commit is contained in:
parent
f99744d00d
commit
a9938e227b
2 changed files with 5 additions and 3 deletions
|
@ -52,7 +52,7 @@ class LabelsFinder < UnionFinder
|
|||
end
|
||||
|
||||
def title
|
||||
params[:title].presence
|
||||
params[:title].presence || params[:name].presence
|
||||
end
|
||||
|
||||
def project
|
||||
|
|
|
@ -116,8 +116,10 @@ module SlashCommands
|
|||
desc 'Add label(s)'
|
||||
params '~label1 ~"label 2"'
|
||||
condition do
|
||||
available_labels = LabelsFinder.new(current_user, project_id: project.id).execute
|
||||
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", project) &&
|
||||
project.labels.any?
|
||||
available_labels.any?
|
||||
end
|
||||
command :label do |labels_param|
|
||||
label_ids = find_label_ids(labels_param)
|
||||
|
@ -248,7 +250,7 @@ module SlashCommands
|
|||
|
||||
def find_label_ids(labels_param)
|
||||
label_ids_by_reference = extract_references(labels_param, :label).map(&:id)
|
||||
labels_ids_by_name = @project.labels.where(name: labels_param.split).select(:id)
|
||||
labels_ids_by_name = LabelsFinder.new(current_user, project_id: project.id, name: labels_param.split).execute.select(:id)
|
||||
|
||||
label_ids_by_reference | labels_ids_by_name
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue