Sha256: 8276ce1a08c88b570d3ef721da4c6164c89422b6023332988b51b7395478f2bc
Contents?: true
Size: 902 Bytes
Versions: 7
Compression:
Stored size: 902 Bytes
Contents
# encoding: UTF-8 require 'base58' module Spontaneous module Permissions autoload :UserLevel, "spontaneous/permissions/user_level" autoload :User, "spontaneous/permissions/user" autoload :AccessGroup, "spontaneous/permissions/access_group" autoload :AccessKey, "spontaneous/permissions/access_key" @@active_user = nil class << self # Convenience shortcut so we can do Permissions[:root] def [](level_name) UserLevel[level_name] end def root UserLevel.root end def has_level?(user, level) return true unless user user.level >= level end def random_string(length) bytes = ((length * Math.log10(58))/(8 * Math.log10(2))).ceil + 2 string = Base58.encode(OpenSSL::Random.random_bytes(bytes).unpack("h*").first.to_i(16)) string[0...(length)] end end end end
Version data entries
7 entries across 7 versions & 1 rubygems