summaryrefslogtreecommitdiff
path: root/app/serializers/project_entity.rb
diff options
context:
space:
mode:
authorBob Van Landuyt <bob@vanlanduyt.co>2017-07-21 15:49:37 +0200
committerBob Van Landuyt <bob@vanlanduyt.co>2017-09-01 10:21:09 +0200
commit1e668a3cfebfcf576a8c5da834bad094fd9039f6 (patch)
tree405caed1e99ae5f642c9f363d793b3a9a64c4dd1 /app/serializers/project_entity.rb
parentbf4ec606a56238326bf4930c59d0ca82dd281cb7 (diff)
downloadgitlab-ce-1e668a3cfebfcf576a8c5da834bad094fd9039f6.tar.gz
Rework subgroup endpointbvl-show-projects-in-group-tree
Diffstat (limited to 'app/serializers/project_entity.rb')
-rw-r--r--app/serializers/project_entity.rb21
1 files changed, 16 insertions, 5 deletions
diff --git a/app/serializers/project_entity.rb b/app/serializers/project_entity.rb
index b3e5fd21e97..71d6835cb31 100644
--- a/app/serializers/project_entity.rb
+++ b/app/serializers/project_entity.rb
@@ -1,14 +1,25 @@
class ProjectEntity < Grape::Entity
+ include ActionView::Helpers::NumberHelper
include RequestAwareEntity
- expose :id
- expose :name
+ expose :id, :name, :description, :visibility, :full_name, :full_path, :web_url,
+ :created_at, :updated_at, :star_count, :can_edit
- expose :full_path do |project|
+ def can_edit
+ return false unless request.respond_to?(:current_user)
+
+ can?(request.current_user, :edit_project, object)
+ end
+
+ expose :project_path do |project|
project_path(project)
end
- expose :full_name do |project|
- project.full_name
+ expose :edit_path do |project|
+ edit_project_path(project)
+ end
+
+ expose :avatar_url do |project|
+ project.try(:avatar_url)
end
end