summaryrefslogtreecommitdiff
path: root/lib/api/issues.rb
diff options
context:
space:
mode:
authorFilipa Lacerda <filipa@gitlab.com>2017-08-31 09:33:08 +0100
committerFilipa Lacerda <filipa@gitlab.com>2017-08-31 09:33:08 +0100
commitf1ef373b3ba4f46cbe4b1225d0b5019a0fce688f (patch)
tree30860f20069f453570fd6cf50f07ff7d86c2eb37 /lib/api/issues.rb
parent7a0a9c23028aa487078bac6499bd86f3356c84a0 (diff)
parent3e092caa91853afeab3bb01be10869e45c39de5d (diff)
downloadgitlab-ce-37179-dashboard-project-dropdown.tar.gz
Merge branch 'master' into 37179-dashboard-project-dropdown37179-dashboard-project-dropdown
* master: (65 commits) Upgrade mail and nokogiri gems due to security issues Link out to stackoverflow answer on setting swappiness Document swappiness recomendations in the requirements doc Fix invalid attribute used for time-ago-tooltip component Update latest artifacts doc Add changelog entry for flipping verify_certificates Default LDAP config verify_certificates to true Update share project with groups docs remove accidental console.log from karma tests update specs to match reorganized monitoring components Remove tooltips from new sidebar Use `git update-ref --stdin -z` to delete refs Don't use public_send in destroy_conditionally! helper Remove unused expressions policy from ci/cd config Simplify code for appending strategies in CI/CD config Raise exception when simplifiable ci entry incomplete Add changelog entry Fix MySQL failure for emoji autocomplete max-width for lazy-loaded images (this was removed in the original MR through merge resolution most probably) Make namespace dropdown on new project page consistent ...
Diffstat (limited to 'lib/api/issues.rb')
-rw-r--r--lib/api/issues.rb28
1 files changed, 25 insertions, 3 deletions
diff --git a/lib/api/issues.rb b/lib/api/issues.rb
index 6503629e2a2..0297023226f 100644
--- a/lib/api/issues.rb
+++ b/lib/api/issues.rb
@@ -4,6 +4,8 @@ module API
before { authenticate! }
+ helpers ::Gitlab::IssuableMetadata
+
helpers do
def find_issues(args = {})
args = params.merge(args)
@@ -13,6 +15,7 @@ module API
args[:label_name] = args.delete(:labels)
issues = IssuesFinder.new(current_user, args).execute
+ .preload(:assignees, :labels, :notes, :timelogs)
issues.reorder(args[:order_by] => args[:sort])
end
@@ -65,7 +68,13 @@ module API
get do
issues = find_issues
- present paginate(issues), with: Entities::IssueBasic, current_user: current_user
+ options = {
+ with: Entities::IssueBasic,
+ current_user: current_user,
+ issuable_metadata: issuable_meta_data(issues, 'Issue')
+ }
+
+ present paginate(issues), options
end
end
@@ -86,7 +95,13 @@ module API
issues = find_issues(group_id: group.id)
- present paginate(issues), with: Entities::IssueBasic, current_user: current_user
+ options = {
+ with: Entities::IssueBasic,
+ current_user: current_user,
+ issuable_metadata: issuable_meta_data(issues, 'Issue')
+ }
+
+ present paginate(issues), options
end
end
@@ -109,7 +124,14 @@ module API
issues = find_issues(project_id: project.id)
- present paginate(issues), with: Entities::IssueBasic, current_user: current_user, project: user_project
+ options = {
+ with: Entities::IssueBasic,
+ current_user: current_user,
+ project: user_project,
+ issuable_metadata: issuable_meta_data(issues, 'Issue')
+ }
+
+ present paginate(issues), options
end
desc 'Get a single project issue' do