make sure access control is using the non-core user model

This commit is contained in:
Konstantin Haase 2015-02-23 17:09:14 +01:00
parent d78a5b8883
commit 0a485d2137
6 changed files with 12 additions and 7 deletions

View File

@ -5,6 +5,7 @@ module Travis::API::V3
attr_reader :user, :permissions
def initialize(user)
user = Models::User.find(user.id) if user.is_a? ::User
@user = user
@permissions = user.permissions.where(user_id: user.id)
super()

View File

@ -1,5 +1,9 @@
module Travis::API::V3
class Models::User < Model
has_many :emails
has_many :memberships, dependent: :destroy
has_many :organizations, through: :memberships
has_many :permissions, dependent: :destroy
has_many :repositories, through: :permissions
has_many :emails, dependent: :destroy
end
end

View File

@ -4,7 +4,7 @@ module Travis::API::V3
def find
return Models::Build.find_by_id(id) if id
raise WrongParams
raise WrongParams, 'missing build.id'.freeze
end
end
end

View File

@ -4,7 +4,7 @@ module Travis::API::V3
def find
return Models::Organization.find_by_id(id) if id
raise WrongParams
raise WrongParams, 'missing organization.id'.freeze
end
end
end

View File

@ -4,7 +4,7 @@ module Travis::API::V3
def find
return Models::Repository.find_by_id(id) if id
raise WrongParams
raise WrongParams, 'missing repository.id'.freeze
end
end
end

View File

@ -46,9 +46,9 @@ module Travis::API::V3
def user_condition(value)
case value
when String then { login: value }
when Integer then { id: value }
when ::User then { id: value.id }
when String then { login: value }
when Integer then { id: value }
when Models::User then { id: value.id }
else raise WrongParams
end
end