Sha256: 4715f759d7c527d631d1e47aa5774c2d2e54c8b4ca5b6d5f859f14fc828dfe12

Contents?: true

Size: 918 Bytes

Versions: 5

Compression:

Stored size: 918 Bytes

Contents

# == Schema Information
#
# Table name: faalis_permissions
#
#  id              :integer          not null, primary key
#  model           :string
#  permission_type :string
#  created_at      :datetime
#  updated_at      :datetime
#

module Faalis
  class Permission < ORM.proper_base_class

    if ::Faalis::ORM.mongoid?
      include Mongoid::Document
      include Mongoid::Timestamps

      field :model, type: String
      field :permission_type, type: String

    end

    has_and_belongs_to_many :groups, class_name: 'Faalis::Group'
    alias_attribute :action, :permission_type

    #alias_method :action, :permission_type

    def to_s
      t('permission_string', action: t(self.permission_type.to_s),
        model: t(self.model.underscore.humanize))
    end

    def id_repr
      "#{self.permission_type.to_s}|#{self.model}"
    end

    def model_name
      model.underscore.humanize
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
faalis-2.2.0.pre.rc1 app/models/faalis/permission.rb
faalis-2.2.1 app/models/faalis/permission.rb
faalis-2.2.0 app/models/faalis/permission.rb
faalis-2.1.1 app/models/faalis/permission.rb
faalis-2.1.0 app/models/faalis/permission.rb