From 1b111b83bf79a0f2e27c2a445a4757d399b36ca0 Mon Sep 17 00:00:00 2001 From: tiagonbotelho <tiagonbotelho@hotmail.com> Date: Fri, 8 Jul 2016 09:47:09 +0100 Subject: [PATCH] changes the usage of simpleprojectdetails to already implemented basicprojectsdetails and changes the url to a more reader friendly format --- app/assets/javascripts/api.js.coffee | 2 +- lib/api/entities.rb | 8 +------- lib/api/projects.rb | 17 +++++------------ 3 files changed, 7 insertions(+), 20 deletions(-) diff --git a/app/assets/javascripts/api.js.coffee b/app/assets/javascripts/api.js.coffee index 45059ae4042..8028e66f089 100644 --- a/app/assets/javascripts/api.js.coffee +++ b/app/assets/javascripts/api.js.coffee @@ -3,7 +3,7 @@ groupPath: "/api/:version/groups/:id.json" namespacesPath: "/api/:version/namespaces.json" groupProjectsPath: "/api/:version/groups/:id/projects.json" - projectsPath: "/api/:version/projects/simple.json" + projectsPath: "/api/:version/projects.json?format=simple" labelsPath: "/api/:version/projects/:id/labels" licensePath: "/api/:version/licenses/:key" gitignorePath: "/api/:version/gitignores/:key" diff --git a/lib/api/entities.rb b/lib/api/entities.rb index 0f26a1f00a2..aae1840821e 100644 --- a/lib/api/entities.rb +++ b/lib/api/entities.rb @@ -79,12 +79,6 @@ module API expose :public_builds end - class SimpleProject < Grape::Entity - expose :id - expose :name, :name_with_namespace - expose :http_url_to_repo - end - class ProjectMember < UserBasic expose :access_level do |user, options| options[:project].project_members.find_by(user_id: user.id).access_level @@ -334,7 +328,7 @@ module API end end - class SimpleProjectWithAccess < SimpleProject + class BasicProjectWithAccess < BasicProjectDetails expose :permissions do expose :project_access, using: Entities::ProjectAccess do |project, options| project.project_members.find_by(user_id: options[:user].id) diff --git a/lib/api/projects.rb b/lib/api/projects.rb index c1e66b239aa..c46764c4897 100644 --- a/lib/api/projects.rb +++ b/lib/api/projects.rb @@ -25,18 +25,11 @@ module API @projects = current_user.authorized_projects @projects = filter_projects(@projects) @projects = paginate @projects - present @projects, with: Entities::ProjectWithAccess, user: current_user - end - - # Get a simplified project list for authenticated user - # - # Example Request: - # GET /projects/simple - get '/simple' do - @projects = current_user.authorized_projects - @projects = filter_projects(@projects) - @projects = paginate @projects - present @projects, with: Entities::SimpleProjectWithAccess, user: current_user + if params["format"] + present @projects, with: Entities::BasicProjectWithAccess, user: current_user + else + present @projects, with: Entities::ProjectWithAccess, user: current_user + end end # Get an owned projects list for authenticated user -- GitLab