Sha256: 51ee17140f42c76f3290ed6229c88842ea85d312ef5a3a76671a14a52651d90e

Contents?: true

Size: 1.36 KB

Versions: 36

Compression:

Stored size: 1.36 KB

Contents

require "#{File.dirname(__FILE__)}/default_adapter"
require "#{File.dirname(__FILE__)}/devise_adapter"

module Lolita
  class NoAuthenticationDefinedError < ArgumentError; end
  
  module Extensions
    module Authentication
    
      class Proxy
        attr_accessor :adapter

        def initialize context,options={}
          @context = context
          @options = options
          @adapter = get_adapter()
        end

        def current_user
          @adapter.current_user
        end
        
        def user_signed_in?
          @adapter.user_signed_in?
        end
        
        def authenticate_user!
          @adapter.authenticate_user!
        end

        def sign_out_via
          @adapter.sign_out_via unless default_adapter?
        end
        
        def edit_path
          @adapter.edit_path unless default_adapter?
        end

        def sign_out_path
          @adapter.sign_out_path unless default_adapter?
        end

        def default_adapter?
          self.adapter.is_a?(Lolita::Extensions::Authentication::DefaultAdapter)
        end

        private

        def get_adapter
          if Lolita.authentication
            Lolita::Extensions::Authentication::DeviseAdapter.new @context, @options
          else
            Lolita::Extensions::Authentication::DefaultAdapter.new @context, @options
          end
        end
      end

    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
lolita-4.0.11 lib/lolita/extensions/authentication/proxy.rb
lolita-4.2.0 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.10 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.9 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.8 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.7 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.6 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.5 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.4 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.3 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.2 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.1 lib/lolita/extensions/authentication/proxy.rb
lolita-4.0.0 lib/lolita/extensions/authentication/proxy.rb
lolita-3.4.3 lib/lolita/extensions/authentication/proxy.rb
lolita-3.4.2 lib/lolita/extensions/authentication/proxy.rb
lolita-3.4.1 lib/lolita/extensions/authentication/proxy.rb
lolita-3.4.0 lib/lolita/extensions/authentication/proxy.rb
lolita-3.3.9 lib/lolita/extensions/authentication/proxy.rb
lolita-3.3.8 lib/lolita/extensions/authentication/proxy.rb
lolita-3.3.7 lib/lolita/extensions/authentication/proxy.rb