module OmniAuth::MultiPassword::Base

Public Class Methods

included(base) click to toggle source
# File lib/omniauth/multipassword/base.rb, line 4
def self.included(base)
  base.class_eval do
    option :title,  "Restricted Access"
    option :fields, [ :username, :password ]

    uid  { username }
  end
end

Public Instance Methods

callback_phase() click to toggle source
Calls superclass method
# File lib/omniauth/multipassword/base.rb, line 31
def callback_phase
  if authenticate(username, request[password_id])
    super
  else
    fail!(:invalid_credentials)
  end
end
init_authenticator(request, env, username) click to toggle source
# File lib/omniauth/multipassword/base.rb, line 25
def init_authenticator(request, env, username)
  @request  = request
  @env      = env
  @username = username
end
password_id() click to toggle source
# File lib/omniauth/multipassword/base.rb, line 17
def password_id
  options[:fields][1] || "password"
end
request_phase() click to toggle source
# File lib/omniauth/multipassword/base.rb, line 39
def request_phase
  OmniAuth::Form.build(:title => options.title, :url => callback_url) do |f|
    f.text_field     "Username", username_id
    f.password_field "Password", password_id
  end.to_response
end
username() click to toggle source
# File lib/omniauth/multipassword/base.rb, line 21
def username
  @username || request[username_id].to_s
end
username_id() click to toggle source
# File lib/omniauth/multipassword/base.rb, line 13
def username_id
  options[:fields][0] || "username"
end