unauthorized! unless current_user
end
+ def authenticated_as_admin!
+ forbidden! unless current_user.is_admin?
+ end
+
def authorize! action, subject
unless abilities.allowed?(current_user, action, subject)
forbidden!
@user = User.find(params[:id])
present @user, with: Entities::User
end
+
+ # Create user. Available only for admin
+ #
+ # Parameters:
+ # email (required) - Email
+ # name (required) - Name
+ # password (required) - Password
+ # password_confirmation (required) - Password confirmation
+ # skype - Skype ID
+ # linkedin (required) - Linkedin
+ # twitter - Twitter account
+ # projects_limit - Limit projects wich user can create
+ # Example Request:
+ # POST /users
+ post do
+ authenticated_as_admin!
+ attrs = attributes_for_keys [:email, :name, :password, :password_confirmation, :skype, :linkedin, :twitter, :projects_limit]
+ user = User.new attrs
+ if user.save
+ present user, with: Entities::User
+ else
+ not_found!
+ end
+ end
end
resource :user do
key = current_user.keys.find params[:id]
key.delete
end
+
+
end
end
end