summaryrefslogtreecommitdiff
path: root/lib/api/entities.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/entities.rb')
-rw-r--r--lib/api/entities.rb16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index f00a4ac2ed6..951cca248a1 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -90,6 +90,12 @@ module API
end
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
@@ -341,12 +347,18 @@ module API
end
end
+ class SimpleProjectWithAccess < SimpleProject
+ expose :permissions do
+ expose :project_access, using: Entities::ProjectAccess do |project, options|
+ project.project_members.find_by(user_id: options[:user].id)
+ end
+ end
+ end
+
class ProjectWithAccess < Project
expose :permissions do
expose :project_access, using: Entities::ProjectAccess do |project, options|
- project = Project.find_by(project[:id])
project.project_members.find_by(user_id: options[:user].id)
- ]
end
expose :group_access, using: Entities::GroupAccess do |project, options|