class InboxPolicy < ApplicationPolicy class Scope attr_reader :user_context, :user, :scope, :account, :account_user def initialize(user_context, scope) @user_context = user_context @user = user_context[:user] @account = user_context[:account] @account_user = user_context[:account_user] @scope = scope end def resolve if @account_user.administrator? scope.all elsif @account_user.agent? user.assigned_inboxes end end end def index? true end def assignable_agents? true end def campaigns? @account_user.administrator? end def create? @account_user.administrator? end def update? @account_user.administrator? end def destroy? @account_user.administrator? end def set_agent_bot? @account_user.administrator? end end