Sha256: facd45422eb91845b71ad198a317334b90645925cb79e3a484b0bf769ce7db0b
Contents?: true
Size: 1.09 KB
Versions: 104
Compression:
Stored size: 1.09 KB
Contents
module Comee module Core class AccessController < ApplicationController skip_before_action :authenticate, only: [:login] def login user = User.find_by(email: auth_params[:email]) if user unless user.application_roles?(current_application) render(json: {error: "User does not have access to this application."}, status: 400) and return end roles = user.application_roles(current_application).map(&:code) if user.authenticate(auth_params[:password]) payload = { id: user.id, name: user.name, email: user.email, roles: roles } jwt = TokenService.issue(payload) render json: {token: jwt, user: payload} else render json: {error: "Invalid password."}, status: 400 end else render json: {error: "User does not exist."}, status: 400 end end private def auth_params params.require(:auth).permit(:email, :password) end end end end
Version data entries
104 entries across 104 versions & 1 rubygems