module RackWarden::UniversalHelpers

Public Instance Methods

account_widget() click to toggle source
# File lib/rack_warden/helpers.rb, line 178
def account_widget
     rack_warden.erb :'rw_account_widget.html', :layout=>false
end
authorized?(options=request) click to toggle source
# File lib/rack_warden/helpers.rb, line 153
def authorized?(options=request)
        App.logger.debug "RW authorized? user '#{current_user}'"
        current_user && current_user.authorized?(options) || request.script_name[/login|new|create|logout/]
end
current_user() click to toggle source
# File lib/rack_warden/helpers.rb, line 143
    def current_user
#warden.authenticated? && warden.user
logged_in? && warden.user
    end
flash_widget() click to toggle source
# File lib/rack_warden/helpers.rb, line 182
def flash_widget
     App.logger.debug "RW flash_widget self.flash #{self.flash}"
     App.logger.debug "RW flash_widget rack.flash #{env['x-rack.flash']}"
     App.logger.debug "RW flash_widget.rack_warden.flash #{rack_warden.request.env['x-rack.flash']}"
     rack_warden.erb :'rw_flash_widget.html', :layout=>false
end
logged_in?() click to toggle source
# File lib/rack_warden/helpers.rb, line 148
    def logged_in?
            App.logger.debug "RW logged_in? #{warden.authenticated?}"
warden.authenticated? || warden.authenticate(:remember_me)
    end
rack_warden() click to toggle source

Returns the current rack_warden app instance stored in env.

# File lib/rack_warden/helpers.rb, line 173
def rack_warden
     App.logger.debug "RW helper method 'rack_warden' request.env['rack_warden_instance'] #{request.env['rack_warden_instance']}"
     request.env['rack_warden_instance'] #.tap {|rw| rw.request = request}    #request}
end
require_authorization(authenticate_on_fail=false, options=request) click to toggle source
# File lib/rack_warden/helpers.rb, line 158
def require_authorization(authenticate_on_fail=false, options=request)
        App.logger.debug "RW require_authorization"
        logged_in? || warden.authenticate!
        unless authorized?(options)
                if authenticate_on_fail
                        flash[:rw_error] = ("Please login to continiue")
                        redirect url_for("/login")
                else
                        flash[:rw_error] = ("You are not authorized to do that")
                        redirect back
                end
        end          
end
require_login() click to toggle source

protected … might need this for rails, but not for sinatra.

# File lib/rack_warden/helpers.rb, line 128
      def require_login
              App.logger.debug "RW running #{self}.require_login with rack_warden: #{rack_warden}, and warden: #{warden}"
              #App.logger.debug "RW instance #{self}.require_login ancestors #{self.class.ancestors.inspect}"
              #logged_in? || warden.authenticate!
              warden.authenticated? || warden.authenticate!
end
warden() click to toggle source
# File lib/rack_warden/helpers.rb, line 135
    def warden
request.env['warden']
    end
warden_options() click to toggle source
# File lib/rack_warden/helpers.rb, line 139
    def warden_options
request.env['warden.options']
    end