Sha256: aa8128fb6a078f0abc4a3e7cd91f9e36aaf468709b22367e37ee104a4aa3874a

Contents?: true

Size: 588 Bytes

Versions: 4

Compression:

Stored size: 588 Bytes

Contents

# -*- encoding : utf-8 -*-
module RademadeAdmin
  class Login

    def self.admin(params)
      params.require(:data).permit([:email, :password])
      user = RademadeAdmin.user_class.get_by_email(params[:data][:email])

      error('There is no users with such email', :email) unless user.is_a? RademadeAdmin.user_class
      error('Incorrect password', :password) unless user.valid_password? params[:data][:password]
      error('Access denied', :email) unless user.admin?

      user
    end

    def self.error(message, field)
      raise Error.new(message, field)
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rademade_admin-0.1.3 app/services/login.rb
rademade_admin-0.1.2 app/services/login.rb
rademade_admin-0.1.1 app/services/login.rb
rademade_admin-0.1.0 app/services/login.rb