module Sorcery::Model::Adapters::Couchbase::ClassMethods

Public Instance Methods

credential_regex(credential) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 30
def credential_regex(credential)
  @sorcery_config.downcase_username_before_authenticating ? credential.downcase : credential
end
find_by_activation_token(token) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 48
def find_by_activation_token(token)
  sorcery_view(sorcery_config.activation_token_attribute_name).fetch(key: token, stale: false).first
end
find_by_credentials(credentials) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 34
def find_by_credentials(credentials)
  user = nil
  sorcery_config.username_attribute_names.each do |attribute|
    user = sorcery_view(attribute).fetch(key: credential_regex(credentials[0]), stale: false).first
    break if user
  end
  user
end
find_by_email(email) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 64
def find_by_email(email)
  where(sorcery_config.email_attribute_name => email).first
end
find_by_provider_and_uid(provider, uid) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 43
def find_by_provider_and_uid(provider, uid)
  @user_klass ||= ::Sorcery::Controller::Config.user_class.to_s.constantize
  where(@user_klass.sorcery_config.provider_attribute_name => provider, @user_klass.sorcery_config.provider_uid_attribute_name => uid).first
end
find_by_remember_me_token(token) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 52
def find_by_remember_me_token(token)
  sorcery_view(sorcery_config.remember_me_token_attribute_name).fetch(key: token, stale: false).first
end
find_by_sorcery_token(token_attr_name, token) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 60
def find_by_sorcery_token(token_attr_name, token)
  sorcery_view(token_attr_name).fetch(key: token, stale: false).first
end
find_by_username(username) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 56
def find_by_username(username)
  find_by_credentials(username)
end
sorcery_view(view) click to toggle source
# File lib/sorcery/model/adapters/couchbase.rb, line 26
def sorcery_view(view)
  ::Couchbase::View.new(bucket, "_design/#{design_document}/_view/by_#{view}", { wrapper_class: self, include_docs: true })
end