From 624092ab667867ba4a59dce0fa42d0037c830a3f Mon Sep 17 00:00:00 2001 From: Alex Shulgin Date: Wed, 29 May 2013 08:13:10 -0700 Subject: [PATCH 1/3] Redmine-2.3 compatibility TEST --- init.rb | 2 +- .../{query_patch.rb => issue_query_patch.rb} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename lib/redmine_involvement_filter/{query_patch.rb => issue_query_patch.rb} (98%) diff --git a/init.rb b/init.rb index 97ebc00..20f6a68 100644 --- a/init.rb +++ b/init.rb @@ -10,7 +10,7 @@ end prepare_block = Proc.new do - Query.send(:include, RedmineInvolvementFilter::QueryPatch) + IssueQuery.send(:include, RedmineInvolvementFilter::IssueQueryPatch) end if Rails.env.development? diff --git a/lib/redmine_involvement_filter/query_patch.rb b/lib/redmine_involvement_filter/issue_query_patch.rb similarity index 98% rename from lib/redmine_involvement_filter/query_patch.rb rename to lib/redmine_involvement_filter/issue_query_patch.rb index 95df804..b5104b6 100644 --- a/lib/redmine_involvement_filter/query_patch.rb +++ b/lib/redmine_involvement_filter/issue_query_patch.rb @@ -1,5 +1,5 @@ module RedmineInvolvementFilter - module QueryPatch + module IssueQueryPatch unloadable def self.included(base) From 057a9ac51d4ec89eaf9f0e1397057ce382e02b37 Mon Sep 17 00:00:00 2001 From: Darth Vader Date: Sun, 9 Feb 2014 22:52:06 -0600 Subject: [PATCH 2/3] Added issues I am watching to the involvement filter This resolved feature request https://github.com/commandprompt/redmine_involvement_filter/issues/5 --- lib/redmine_involvement_filter/query_patch.rb | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/redmine_involvement_filter/query_patch.rb b/lib/redmine_involvement_filter/query_patch.rb index 95df804..6c5b2b0 100644 --- a/lib/redmine_involvement_filter/query_patch.rb +++ b/lib/redmine_involvement_filter/query_patch.rb @@ -34,15 +34,23 @@ def sql_for_involved_user_id_field(field, operator, value) cond = 'AND' end - issue_ids_sql = %( + journalized_issue_ids_sql = %( SELECT DISTINCT journalized_id FROM #{Journal.table_name} WHERE journalized_type='Issue' AND user_id IN #{user_ids} ) + watched_issue_ids_sql = %( +SELECT DISTINCT watchable_id + FROM #{Watcher.table_name} + WHERE watchable_type='Issue' + AND user_id IN #{user_ids} +) + sql = ["#{Issue.table_name}.assigned_to_id #{inop} #{user_ids}", "#{Issue.table_name}.author_id #{inop} #{user_ids}", - "#{Issue.table_name}.id #{inop} (#{issue_ids_sql})"].join(" #{cond} ") + "#{Issue.table_name}.id #{inop} (#{journalized_issue_ids_sql})", + "#{Issue.table_name}.id #{inop} (#{watched_issue_ids_sql})"].join(" #{cond} ") "(#{sql})" end From b68adeaa52f9fdb4b022e330d89783b79b6f84ae Mon Sep 17 00:00:00 2001 From: Darth Vader Date: Sun, 9 Feb 2014 23:06:28 -0600 Subject: [PATCH 3/3] Updated README documentation to reflect new feature Updated the README to reflect that the filter also includes issues being watched by the user. --- README.rdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rdoc b/README.rdoc index e9e9f65..787182b 100644 --- a/README.rdoc +++ b/README.rdoc @@ -6,7 +6,7 @@ For Redmine versions prior to 2.x, check out the pre-2.x branch. A user is involved in the issue if he/she either is the author of the issue, or is assigned to the issue or has updated the issue at least -once. +once or is watching the issue. Adds "My involvement" filter for issue queries with a bool option: either "is involved" or "is not involved".