Add checks to InterpretService conditions
This commit is contained in:
parent
e8e1a51add
commit
07c3778aee
|
@ -210,9 +210,14 @@ module QuickActions
|
|||
end
|
||||
params '~label1 ~"label 2"'
|
||||
condition do
|
||||
available_labels = LabelsFinder.new(current_user, project_id: project.id, include_ancestor_groups: true).execute
|
||||
if project
|
||||
available_labels = LabelsFinder
|
||||
.new(current_user, project_id: project.id, include_ancestor_groups: true)
|
||||
.execute
|
||||
end
|
||||
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", project) &&
|
||||
project &&
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", project) &&
|
||||
available_labels.any?
|
||||
end
|
||||
command :label do |labels_param|
|
||||
|
@ -286,7 +291,8 @@ module QuickActions
|
|||
end
|
||||
params '#issue | !merge_request'
|
||||
condition do
|
||||
current_user.can?(:"update_#{issuable.to_ability_name}", issuable)
|
||||
[MergeRequest, Issue].include?(issuable.class) &&
|
||||
current_user.can?(:"update_#{issuable.to_ability_name}", issuable)
|
||||
end
|
||||
parse_params do |issuable_param|
|
||||
extract_references(issuable_param, :issue).first ||
|
||||
|
@ -443,7 +449,8 @@ module QuickActions
|
|||
end
|
||||
params '<time(1h30m | -1h30m)> <date(YYYY-MM-DD)>'
|
||||
condition do
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", issuable)
|
||||
issuable.is_a?(TimeTrackable) &&
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", issuable)
|
||||
end
|
||||
parse_params do |raw_time_date|
|
||||
Gitlab::QuickActions::SpendTimeAndDateSeparator.new(raw_time_date).execute
|
||||
|
@ -493,7 +500,7 @@ module QuickActions
|
|||
desc "Lock the discussion"
|
||||
explanation "Locks the discussion"
|
||||
condition do
|
||||
issuable.is_a?(Issuable) &&
|
||||
[MergeRequest, Issue].include?(issuable.class) &&
|
||||
issuable.persisted? &&
|
||||
!issuable.discussion_locked? &&
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", issuable)
|
||||
|
@ -505,7 +512,7 @@ module QuickActions
|
|||
desc "Unlock the discussion"
|
||||
explanation "Unlocks the discussion"
|
||||
condition do
|
||||
issuable.is_a?(Issuable) &&
|
||||
[MergeRequest, Issue].include?(issuable.class) &&
|
||||
issuable.persisted? &&
|
||||
issuable.discussion_locked? &&
|
||||
current_user.can?(:"admin_#{issuable.to_ability_name}", issuable)
|
||||
|
|
Loading…
Reference in New Issue