Files
codeocean/app/policies/code_ocean/file_policy.rb
2018-12-12 14:09:19 +01:00

32 lines
544 B
Ruby

module CodeOcean
class FilePolicy < AdminOrAuthorPolicy
def author?
@user == @record.context.author
end
def show?
if @record.context.is_a?(Exercise)
admin? || author? || !@record.hidden
else
admin? || author?
end
end
def create?
if @record.context.is_a?(Exercise)
admin? || author?
else
author?
end
end
def destroy?
if @record.context.is_a?(Exercise)
admin? || author?
else
no_one
end
end
end
end