Files
project-work/worker-toolkit-stocks-in-the-future/repo/app/policies/application_policy.rb
Eric Bell 392781f7aa chore: init commit
in worker.../repo/GITFOLDER.zip is the .git folder.
2026-08-11 14:44:09 -04:00

70 lines
846 B
Ruby

# frozen_string_literal: true
class ApplicationPolicy
attr_reader :user, :record
def initialize(user, record)
@user = user
@record = record
end
def index?
false
end
def show?
false
end
def create?
false
end
def new?
create?
end
def update?
false
end
def edit?
update?
end
def destroy?
false
end
def admin_required?
user&.admin?
end
def teacher_required?
user&.teacher?
end
def student_required?
user&.student?
end
def teacher_or_admin_required?
admin_required? || teacher_required?
end
class Scope
def initialize(user, scope)
@user = user
@scope = scope
end
def resolve
raise NoMethodError, "You must define #resolve in #{self.class}"
end
private
attr_reader :user, :scope
end
end