diff options
Diffstat (limited to 'app/services/issues/base_service.rb')
-rw-r--r-- | app/services/issues/base_service.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/app/services/issues/base_service.rb b/app/services/issues/base_service.rb index 5e0a86fdeee..6dce9fd6e73 100644 --- a/app/services/issues/base_service.rb +++ b/app/services/issues/base_service.rb @@ -34,6 +34,13 @@ module Issues private + def find_work_item_type_id(issue_type) + work_item_type = WorkItem::Type.default_by_type(issue_type) + work_item_type ||= WorkItem::Type.default_issue_type + + work_item_type.id + end + def filter_params(issue) super @@ -84,7 +91,8 @@ module Issues # @param object [Issue, Project] def issue_type_allowed?(object) - can?(current_user, :"create_#{params[:issue_type]}", object) + WorkItem::Type.base_types.key?(params[:issue_type]) && + can?(current_user, :"create_#{params[:issue_type]}", object) end # @param issue [Issue] |