Sha256: a0edc3382a9069b9a14de4a4c7f3970c27206999123dfda89bcd43bdfe49a58e

Contents?: true

Size: 956 Bytes

Versions: 19

Compression:

Stored size: 956 Bytes

Contents

module Oxen
  class UserPolicy < AbstractResourcePolicy

    class Scope < Scope
      def resolve
        if current_user.nil?
          super
        elsif current_user.admin?
          scope.all
        else
          scope.where(account_id: current_user.account.id)
        end
      end
    end


    def index?
      current_user.admin? || current_user.account_admin?
    end

    def show?
      current_user.admin? or current_user.account_admin? or current_user == model
    end

    def update?
      current_user.admin? || current_user.account_admin?
    end

    def create?
      current_user.admin? || current_user.account_admin?
    end

    def destroy?
      return false if @current_user == model
      current_user.admin? || current_user.account_admin?
    end

    def confirm?
      current_user.admin? || current_user.account_admin?
    end

    def invite?
      current_user.admin? || current_user.account_admin?
    end

  end

end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
oxen_user-0.4.13 app/policies/oxen/user_policy.rb
oxen_user-0.4.12 app/policies/oxen/user_policy.rb
oxen_user-0.4.11 app/policies/oxen/user_policy.rb
oxen_user-0.4.9 app/policies/oxen/user_policy.rb
oxen_user-0.4.8 app/policies/oxen/user_policy.rb
oxen_user-0.4.7 app/policies/oxen/user_policy.rb
oxen_user-0.4.3 app/policies/oxen/user_policy.rb
oxen_user-0.4.1 app/policies/oxen/user_policy.rb
oxen_user-0.3.4 app/policies/oxen/user_policy.rb
oxen_user-0.3.3 app/policies/oxen/user_policy.rb
oxen_user-0.3.2 app/policies/oxen/user_policy.rb
oxen_user-0.3.1 app/policies/oxen/user_policy.rb
oxen_user-0.3.0 app/policies/oxen/user_policy.rb
oxen_user-0.2.9 app/policies/oxen/user_policy.rb
oxen_user-0.2.8 app/policies/oxen/user_policy.rb
oxen_user-0.2.4 app/policies/oxen/user_policy.rb
oxen_user-0.2.2 app/policies/oxen/user_policy.rb
oxen_user-0.2.1 app/policies/oxen/user_policy.rb
oxen_user-0.2.0 app/policies/oxen/user_policy.rb