Chris@1296: api.group do Chris@1296: api.id @group.id Chris@1296: api.name @group.lastname Chris@1296: Chris@1296: render_api_custom_values @group.visible_custom_field_values, api Chris@1296: Chris@1296: api.array :users do Chris@1296: @group.users.each do |user| Chris@1296: api.user :id => user.id, :name => user.name Chris@1296: end Chris@1296: end if include_in_api_response?('users') Chris@1296: Chris@1296: api.array :memberships do Chris@1296: @group.memberships.each do |membership| Chris@1296: api.membership do Chris@1296: api.id membership.id Chris@1296: api.project :id => membership.project.id, :name => membership.project.name Chris@1296: api.array :roles do Chris@1296: membership.member_roles.each do |member_role| Chris@1296: if member_role.role Chris@1296: attrs = {:id => member_role.role.id, :name => member_role.role.name} Chris@1296: attrs.merge!(:inherited => true) if member_role.inherited_from.present? Chris@1296: api.role attrs Chris@1296: end Chris@1296: end Chris@1296: end Chris@1296: end if membership.project Chris@1296: end Chris@1296: end if include_in_api_response?('memberships') Chris@1296: end