2018-09-14 05:42:05 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2019-01-07 00:00:48 +00:00
|
|
|
module IssuableCollectionsAction
|
2015-11-17 10:03:18 +00:00
|
|
|
extend ActiveSupport::Concern
|
2016-07-23 23:28:12 +00:00
|
|
|
include IssuableCollections
|
2018-06-12 09:35:34 +00:00
|
|
|
include IssuesCalendar
|
2015-11-17 10:03:18 +00:00
|
|
|
|
2017-11-22 07:50:36 +00:00
|
|
|
# rubocop:disable Gitlab/ModuleWithInstanceVariables
|
2015-11-17 10:03:18 +00:00
|
|
|
def issues
|
2021-09-14 09:11:32 +00:00
|
|
|
show_alert_if_search_is_disabled
|
|
|
|
|
2017-11-07 13:34:12 +00:00
|
|
|
@issues = issuables_collection
|
2016-07-23 23:28:12 +00:00
|
|
|
.non_archived
|
|
|
|
.page(params[:page])
|
2016-02-17 13:52:12 +00:00
|
|
|
|
2020-05-27 15:08:11 +00:00
|
|
|
@issuable_meta_data = Gitlab::IssuableMetadata.new(current_user, @issues).data
|
2017-01-23 20:40:25 +00:00
|
|
|
|
2015-11-17 10:03:18 +00:00
|
|
|
respond_to do |format|
|
|
|
|
format.html
|
2022-03-17 21:08:35 +00:00
|
|
|
format.atom { render layout: 'xml' }
|
2015-11-17 10:03:18 +00:00
|
|
|
end
|
|
|
|
end
|
2019-01-07 00:00:48 +00:00
|
|
|
|
|
|
|
def merge_requests
|
2021-09-14 09:11:32 +00:00
|
|
|
show_alert_if_search_is_disabled
|
|
|
|
|
2019-01-07 00:00:48 +00:00
|
|
|
@merge_requests = issuables_collection.page(params[:page])
|
|
|
|
|
2020-05-27 15:08:11 +00:00
|
|
|
@issuable_meta_data = Gitlab::IssuableMetadata.new(current_user, @merge_requests).data
|
2019-01-07 00:00:48 +00:00
|
|
|
end
|
2017-11-22 07:50:36 +00:00
|
|
|
# rubocop:enable Gitlab/ModuleWithInstanceVariables
|
2018-02-20 12:33:49 +00:00
|
|
|
|
2018-05-31 14:01:04 +00:00
|
|
|
def issues_calendar
|
2018-06-12 09:35:34 +00:00
|
|
|
render_issues_calendar(issuables_collection)
|
2018-05-31 14:01:04 +00:00
|
|
|
end
|
|
|
|
|
2018-02-20 12:33:49 +00:00
|
|
|
private
|
|
|
|
|
2019-08-21 10:13:45 +00:00
|
|
|
def sorting_field
|
2019-01-07 00:00:48 +00:00
|
|
|
case action_name
|
|
|
|
when 'issues'
|
|
|
|
Issue::SORTING_PREFERENCE_FIELD
|
|
|
|
when 'merge_requests'
|
|
|
|
MergeRequest::SORTING_PREFERENCE_FIELD
|
|
|
|
else
|
|
|
|
nil
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-02-20 12:33:49 +00:00
|
|
|
def finder_type
|
2019-01-07 00:00:48 +00:00
|
|
|
case action_name
|
|
|
|
when 'issues', 'issues_calendar'
|
|
|
|
IssuesFinder
|
|
|
|
when 'merge_requests'
|
|
|
|
MergeRequestsFinder
|
|
|
|
else
|
|
|
|
nil
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def finder_options
|
2022-09-24 00:14:11 +00:00
|
|
|
issue_types = Issue::TYPES_FOR_LIST
|
|
|
|
|
2020-10-02 15:08:13 +00:00
|
|
|
super.merge(
|
|
|
|
non_archived: true,
|
2022-09-24 00:14:11 +00:00
|
|
|
issue_types: issue_types
|
2020-10-02 15:08:13 +00:00
|
|
|
)
|
2018-02-20 12:33:49 +00:00
|
|
|
end
|
2015-11-17 10:03:18 +00:00
|
|
|
end
|