diff options
author | Ruben Davila <rdavila84@gmail.com> | 2017-05-19 23:21:34 -0500 |
---|---|---|
committer | Ruben Davila <rdavila84@gmail.com> | 2017-05-19 23:21:34 -0500 |
commit | 9983cd726807cdffb0d717f74a16e88f1d875903 (patch) | |
tree | bc34ad2f6026f8cf8d3c2afb8a47e1e9575f4e06 /lib/api | |
parent | bdf62a19d2cdbdfe554eb73500fd5fe4744161b1 (diff) | |
download | gitlab-ce-include-members-count-in-groups-api.tar.gz |
Add members_count attribute to payload for groups APIinclude-members-count-in-groups-api
Diffstat (limited to 'lib/api')
-rw-r--r-- | lib/api/entities.rb | 11 | ||||
-rw-r--r-- | lib/api/groups.rb | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/lib/api/entities.rb b/lib/api/entities.rb index 01cc8e8e1ca..6bc76ce6cef 100644 --- a/lib/api/entities.rb +++ b/lib/api/entities.rb @@ -146,14 +146,19 @@ module API class Group < Grape::Entity expose :id, :name, :path, :description, :visibility expose :lfs_enabled?, as: :lfs_enabled - expose :avatar_url do |user, options| - user.avatar_url(only_path: false) - end expose :web_url expose :request_access_enabled expose :full_name, :full_path expose :parent_id + expose :members_count do |group, options| + group.members.size + end + + expose :avatar_url do |group, options| + group.avatar_url(only_path: false) + end + expose :statistics, if: :statistics do with_options format_with: -> (value) { value.to_i } do expose :storage_size diff --git a/lib/api/groups.rb b/lib/api/groups.rb index 3da7d735da8..51a2df9bf6b 100644 --- a/lib/api/groups.rb +++ b/lib/api/groups.rb @@ -61,7 +61,7 @@ module API groups = groups.where.not(id: params[:skip_groups]) if params[:skip_groups].present? groups = groups.reorder(params[:order_by] => params[:sort]) - present_groups groups, statistics: params[:statistics] && current_user.admin? + present_groups groups.with_members, statistics: params[:statistics] && current_user.admin? end desc 'Create a group. Available only for users who can create groups.' do |