summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@selenight.nl>2016-03-20 21:14:39 +0100
committerDouwe Maan <douwe@selenight.nl>2016-03-20 21:14:39 +0100
commitfd8d44ca6188b2ad9d6931ce385e61217724a712 (patch)
tree5cde2c3510989a0f64db1eb6500ac19319381f94
parent8db1292139cfdac4c29c03b876b68b9e752cf75a (diff)
downloadgitlab-ce-fd8d44ca6188b2ad9d6931ce385e61217724a712.tar.gz
Fix group project selection in IssuableFinder
-rw-r--r--app/finders/issuable_finder.rb8
-rw-r--r--app/models/issue.rb5
-rw-r--r--app/models/merge_request.rb1
3 files changed, 5 insertions, 9 deletions
diff --git a/app/finders/issuable_finder.rb b/app/finders/issuable_finder.rb
index 7510f6e9e29..dd4208880b6 100644
--- a/app/finders/issuable_finder.rb
+++ b/app/finders/issuable_finder.rb
@@ -80,9 +80,10 @@ class IssuableFinder
@projects = project
elsif current_user && params[:authorized_only].presence && !current_user_related?
@projects = current_user.authorized_projects.reorder(nil)
+ elsif group
+ @projects = GroupProjectsFinder.new(group).execute(current_user).reorder(nil)
else
- @projects = GroupProjectsFinder.new(group).execute(current_user).
- reorder(nil)
+ @projects = ProjectsFinder.new.execute(current_user).reorder(nil)
end
end
@@ -198,8 +199,7 @@ class IssuableFinder
end
def by_group(items)
- items = items.of_group(group) if group
-
+ # Selection by group is already covered by `by_project` and `projects`
items
end
diff --git a/app/models/issue.rb b/app/models/issue.rb
index 5347d4fa1be..60250322b04 100644
--- a/app/models/issue.rb
+++ b/app/models/issue.rb
@@ -33,9 +33,6 @@ class Issue < ActiveRecord::Base
belongs_to :project
validates :project, presence: true
- scope :of_group,
- ->(group) { where(project_id: group.projects.select(:id).reorder(nil)) }
-
scope :cared, ->(user) { where(assignee_id: user) }
scope :open_for, ->(user) { opened.assigned_to(user) }
scope :in_projects, ->(project_ids) { where(project_id: project_ids) }
@@ -106,7 +103,7 @@ class Issue < ActiveRecord::Base
def related_branches
return [] if self.project.empty_repo?
-
+
self.project.repository.branch_names.select { |branch| branch.end_with?("-#{iid}") }
end
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb
index a015a9ef394..ef48207f956 100644
--- a/app/models/merge_request.rb
+++ b/app/models/merge_request.rb
@@ -131,7 +131,6 @@ class MergeRequest < ActiveRecord::Base
validate :validate_branches
validate :validate_fork
- scope :of_group, ->(group) { where("source_project_id in (:group_project_ids) OR target_project_id in (:group_project_ids)", group_project_ids: group.projects.select(:id).reorder(nil)) }
scope :by_branch, ->(branch_name) { where("(source_branch LIKE :branch) OR (target_branch LIKE :branch)", branch: branch_name) }
scope :cared, ->(user) { where('assignee_id = :user OR author_id = :user', user: user.id) }
scope :by_milestone, ->(milestone) { where(milestone_id: milestone) }