Sha256: 34ed0feb88bb1956e126a913e636d4ca04b80b0001bd04dc2ca04b86e3f853ee

Contents?: true

Size: 822 Bytes

Versions: 3

Compression:

Stored size: 822 Bytes

Contents

module Formol
  module Permissions
    module User
      extend ActiveSupport::Concern
      
      PROFILES = Proc.new{ Formol::Permissions::Manager.profiles.profiles }
    
      included do
        #Security
        attr_accessible :formol_profile
        
        #Default values
        default_value_for :formol_profile, :registered
        
        #Validations
        validates :formol_profile,  :presence   => true,
                                    :inclusion  => {  :in           =>  PROFILES,
                                                      :allow_blank  => true }
      end
      
      module InstanceMethods
        def formol_allowed_to?(right, obj = nil)
          @allower ||= Formol::Permissions::Manager.new(self)
          @allower.able_to?(right, obj)
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
formol-0.0.6 lib/formol/permissions/user.rb
formol-0.0.5 lib/formol/permissions/user.rb
formol-0.0.4 lib/formol/permissions/user.rb