Module: Sorcery::Model::Adapters::Couchbase::ClassMethods
- Defined in:
- lib/sorcery/model/adapters/couchbase.rb
Instance Method Summary collapse
- #credential_regex(credential) ⇒ Object
- #find_by_activation_token(token) ⇒ Object
- #find_by_credentials(credentials) ⇒ Object
- #find_by_email(email) ⇒ Object
- #find_by_provider_and_uid(provider, uid) ⇒ Object
- #find_by_remember_me_token(token) ⇒ Object
- #find_by_sorcery_token(token_attr_name, token) ⇒ Object
- #find_by_username(username) ⇒ Object
- #sorcery_view(view) ⇒ Object
Instance Method Details
#credential_regex(credential) ⇒ Object
30 31 32 |
# 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) ⇒ Object
48 49 50 |
# 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) ⇒ Object
34 35 36 37 38 39 40 41 |
# 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) ⇒ Object
65 66 67 |
# File 'lib/sorcery/model/adapters/couchbase.rb', line 65 def find_by_email(email) where(sorcery_config.email_attribute_name => email).first end |
#find_by_provider_and_uid(provider, uid) ⇒ Object
43 44 45 46 |
# 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) ⇒ Object
52 53 54 |
# 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) ⇒ Object
61 62 63 |
# File 'lib/sorcery/model/adapters/couchbase.rb', line 61 def find_by_sorcery_token(token_attr_name, token) where(token_attr_name => token).first end |
#find_by_username(username) ⇒ Object
56 57 58 |
# File 'lib/sorcery/model/adapters/couchbase.rb', line 56 def find_by_username(username) find_by_credentials(username) end |
#sorcery_view(view) ⇒ Object
26 27 28 |
# 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 |