Sha256: 75cb4fa0ee7083f14dd88be0ef98082f1a27faec8d185b15ddcb40a4932cb95d

Contents?: true

Size: 571 Bytes

Versions: 1

Compression:

Stored size: 571 Bytes

Contents

module RademadeAdmin
  class Login
    def self.admin(params)
      params.require( :data ).permit([:email, :password])
      user = RademadeAdmin.user_class.where(:email => params[:data][:email]).first

      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

1 entries across 1 versions & 1 rubygems

Version Path
rademade_admin-0.0.1 app/services/login.rb