09163e423a
Count issues related merge requests based on user access level. And issue can have related MRs from projects where user does not have access so the number of related merge requests should be adjusted based on user's ability to access the related MRs. https://gitlab.com/gitlab-org/gitlab-ce/issues/59581
60 lines
1.3 KiB
Ruby
60 lines
1.3 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
module IssuableCollectionsAction
|
|
extend ActiveSupport::Concern
|
|
include IssuableCollections
|
|
include IssuesCalendar
|
|
|
|
# rubocop:disable Gitlab/ModuleWithInstanceVariables
|
|
def issues
|
|
@issues = issuables_collection
|
|
.non_archived
|
|
.page(params[:page])
|
|
|
|
@issuable_meta_data = issuable_meta_data(@issues, collection_type, current_user)
|
|
|
|
respond_to do |format|
|
|
format.html
|
|
format.atom { render layout: 'xml.atom' }
|
|
end
|
|
end
|
|
|
|
def merge_requests
|
|
@merge_requests = issuables_collection.page(params[:page])
|
|
|
|
@issuable_meta_data = issuable_meta_data(@merge_requests, collection_type, current_user)
|
|
end
|
|
# rubocop:enable Gitlab/ModuleWithInstanceVariables
|
|
|
|
def issues_calendar
|
|
render_issues_calendar(issuables_collection)
|
|
end
|
|
|
|
private
|
|
|
|
def issuable_sorting_field
|
|
case action_name
|
|
when 'issues'
|
|
Issue::SORTING_PREFERENCE_FIELD
|
|
when 'merge_requests'
|
|
MergeRequest::SORTING_PREFERENCE_FIELD
|
|
else
|
|
nil
|
|
end
|
|
end
|
|
|
|
def finder_type
|
|
case action_name
|
|
when 'issues', 'issues_calendar'
|
|
IssuesFinder
|
|
when 'merge_requests'
|
|
MergeRequestsFinder
|
|
else
|
|
nil
|
|
end
|
|
end
|
|
|
|
def finder_options
|
|
super.merge(non_archived: true)
|
|
end
|
|
end
|