Sha256: 14b00b3010d4f480f26922b142624433be32459b618f0527f04dcc303fc7fa79
Contents?: true
Size: 692 Bytes
Versions: 6
Compression:
Stored size: 692 Bytes
Contents
# encoding: UTF-8 require 'rack' module Spontaneous::Rack module Authentication def requires_authentication!(options = {}) first_level_exceptions = (options[:except_all] || []).concat(["#{NAMESPACE}/login", "#{NAMESPACE}/reauthenticate"] ) second_level_exceptions = (options[:except_key] || []) before { unless first_level_exceptions.any? { |e| e === request.path } ignore_key = second_level_exceptions.any? { |e| e === request.path } valid_key = ignore_key || Spontaneous::Permissions::AccessKey.valid?(params[KEY_PARAM], user) show_login_page( :login => '' ) unless (user and valid_key) end } end end end
Version data entries
6 entries across 6 versions & 1 rubygems