Sha256: 012df0772b3fd21f837a8963a7a7ead1d0ff8beb414cd359719caaadc599f390

Contents?: true

Size: 1.04 KB

Versions: 33

Compression:

Stored size: 1.04 KB

Contents

module RailsBase::Authentication
	class AuthenticateUser < RailsBase::ServiceBase
		delegate :email, to: :context
		delegate :password, to: :context
		delegate :current_user, to: :context

		def call
			user = current_user || User.find_for_authentication(email: email)
			valid = user.present? && user.valid_password?(password)
			if valid
				log(level: :info, msg: "Correctly found valid user_id #{user.id}")
				context.user = user
			else
				log(level: :warn, msg: "Failed to validate credentials")
				log(level: :warn, msg: "Found user? #{user.present?}. Valid password?[#{user&.valid_password?(password)}]")
				context.fail!(message: "Incorrect credentials. Please try again")
			end
		end

		def validate!
			raise "Expected email to be a String. Received #{email.class}" unless email.is_a? String
			raise "Expected password to be a String. Received #{password.class}" unless password.is_a? String

			return unless current_user
			raise "Expected current_user to be a User. Received #{current_user.class}" unless current_user.is_a? User
		end
	end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
rails_base-0.82.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.81.1 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.81.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.80.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.6 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.5 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.4 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.3 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.2 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.1 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.75.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.74.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.73.1 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.73.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.72.1 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.72.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.71.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.70.1.pre app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.70.0 app/services/rails_base/authentication/authenticate_user.rb
rails_base-0.61.0 app/services/rails_base/authentication/authenticate_user.rb