diff options
author | Go MAEDA <maeda@farend.jp> | 2021-07-06 06:01:50 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2021-07-06 06:01:50 +0000 |
commit | 7f965286ed6b1d7e906e8662daba0d49b1cf7666 (patch) | |
tree | aea4a14340b1e4ec29743bddf2cdef5f9b643206 /app/controllers | |
parent | 1b0bf2880374307e9669cfd4ed32cfe6677a3503 (diff) | |
download | redmine-7f965286ed6b1d7e906e8662daba0d49b1cf7666.tar.gz redmine-7f965286ed6b1d7e906e8662daba0d49b1cf7666.zip |
Default issue query (#7360).
Patch by Katsuya HIDAKA (the author of https://github.com/hidakatsuya/redmine_default_custom_query), Takenori TAKAKI, Olivier Chabert, and Jens Krämer.
git-svn-id: http://svn.redmine.org/redmine/trunk@21061 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/issues_controller.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 62124db42..080520ef5 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -44,6 +44,7 @@ class IssuesController < ApplicationController def index use_session = !request.format.csv? + retrieve_default_query(use_session) retrieve_query(IssueQuery, use_session) if @query.valid? @@ -480,6 +481,24 @@ class IssuesController < ApplicationController super end + def retrieve_default_query(use_session) + return if params[:query_id].present? + return if api_request? + return if params[:set_filter] && (params.key?(:op) || params.key?(:f)) + + if params[:without_default].present? + params[:set_filter] = 1 + return + end + if !params[:set_filter] && use_session && session[:issue_query] + query_id, project_id = session[:issue_query].values_at(:id, :project_id) + return if IssueQuery.where(id: query_id).exists? && project_id == @project&.id + end + if default_query = IssueQuery.default(project: @project) + params[:query_id] = default_query.id + end + end + def retrieve_previous_and_next_issue_ids if params[:prev_issue_id].present? || params[:next_issue_id].present? @prev_issue_id = params[:prev_issue_id].presence.try(:to_i) |