Commit 28e7d1a8bf3ef172331125cf56d92af85ea5e8b2
1 parent
6956f1f6
Exists in
master
and in
4 other branches
Abilities added to /user and /sign_in requests
Showing
5 changed files
with
16 additions
and
4 deletions
Show diff stats
lib/api/entities.rb
| @@ -15,6 +15,10 @@ module Gitlab | @@ -15,6 +15,10 @@ module Gitlab | ||
| 15 | 15 | ||
| 16 | class UserLogin < UserBasic | 16 | class UserLogin < UserBasic |
| 17 | expose :private_token | 17 | expose :private_token |
| 18 | + expose :is_admin?, as: :is_admin | ||
| 19 | + expose :can_create_group?, as: :can_create_group | ||
| 20 | + expose :can_create_project?, as: :can_create_project | ||
| 21 | + expose :can_create_team?, as: :can_create_team | ||
| 18 | end | 22 | end |
| 19 | 23 | ||
| 20 | class Hook < Grape::Entity | 24 | class Hook < Grape::Entity |
| @@ -31,7 +35,7 @@ module Gitlab | @@ -31,7 +35,7 @@ module Gitlab | ||
| 31 | end | 35 | end |
| 32 | 36 | ||
| 33 | class ProjectMember < UserBasic | 37 | class ProjectMember < UserBasic |
| 34 | - expose :project_access, :as => :access_level do |user, options| | 38 | + expose :project_access, as: :access_level do |user, options| |
| 35 | options[:project].users_projects.find_by_user_id(user.id).project_access | 39 | options[:project].users_projects.find_by_user_id(user.id).project_access |
| 36 | end | 40 | end |
| 37 | end | 41 | end |
lib/api/projects.rb
| @@ -191,7 +191,7 @@ module Gitlab | @@ -191,7 +191,7 @@ module Gitlab | ||
| 191 | unless team_member.nil? | 191 | unless team_member.nil? |
| 192 | team_member.destroy | 192 | team_member.destroy |
| 193 | else | 193 | else |
| 194 | - {:message => "Access revoked", :id => params[:user_id].to_i} | 194 | + {message: "Access revoked", id: params[:user_id].to_i} |
| 195 | end | 195 | end |
| 196 | end | 196 | end |
| 197 | 197 | ||
| @@ -322,7 +322,7 @@ module Gitlab | @@ -322,7 +322,7 @@ module Gitlab | ||
| 322 | protected = user_project.protected_branches.find_by_name(@branch.name) | 322 | protected = user_project.protected_branches.find_by_name(@branch.name) |
| 323 | 323 | ||
| 324 | unless protected | 324 | unless protected |
| 325 | - user_project.protected_branches.create(:name => @branch.name) | 325 | + user_project.protected_branches.create(name: @branch.name) |
| 326 | end | 326 | end |
| 327 | 327 | ||
| 328 | present @branch, with: Entities::RepoObject, project: user_project | 328 | present @branch, with: Entities::RepoObject, project: user_project |
lib/api/users.rb
| @@ -124,7 +124,7 @@ module Gitlab | @@ -124,7 +124,7 @@ module Gitlab | ||
| 124 | # Example Request: | 124 | # Example Request: |
| 125 | # GET /user | 125 | # GET /user |
| 126 | get do | 126 | get do |
| 127 | - present @current_user, with: Entities::User | 127 | + present @current_user, with: Entities::UserLogin |
| 128 | end | 128 | end |
| 129 | 129 | ||
| 130 | # Get currently authenticated user's keys | 130 | # Get currently authenticated user's keys |
spec/requests/api/session_spec.rb
| @@ -13,6 +13,10 @@ describe Gitlab::API do | @@ -13,6 +13,10 @@ describe Gitlab::API do | ||
| 13 | 13 | ||
| 14 | json_response['email'].should == user.email | 14 | json_response['email'].should == user.email |
| 15 | json_response['private_token'].should == user.private_token | 15 | json_response['private_token'].should == user.private_token |
| 16 | + json_response['is_admin'].should == user.is_admin? | ||
| 17 | + json_response['can_create_team'].should == user.can_create_team? | ||
| 18 | + json_response['can_create_project'].should == user.can_create_project? | ||
| 19 | + json_response['can_create_group'].should == user.can_create_group? | ||
| 16 | end | 20 | end |
| 17 | end | 21 | end |
| 18 | 22 |
spec/requests/api/users_spec.rb
| @@ -214,6 +214,10 @@ describe Gitlab::API do | @@ -214,6 +214,10 @@ describe Gitlab::API do | ||
| 214 | get api("/user", user) | 214 | get api("/user", user) |
| 215 | response.status.should == 200 | 215 | response.status.should == 200 |
| 216 | json_response['email'].should == user.email | 216 | json_response['email'].should == user.email |
| 217 | + json_response['is_admin'].should == user.is_admin? | ||
| 218 | + json_response['can_create_team'].should == user.can_create_team? | ||
| 219 | + json_response['can_create_project'].should == user.can_create_project? | ||
| 220 | + json_response['can_create_group'].should == user.can_create_group? | ||
| 217 | end | 221 | end |
| 218 | 222 | ||
| 219 | it "should return 401 error if user is unauthenticated" do | 223 | it "should return 401 error if user is unauthenticated" do |