Updated registrar pki login

This commit is contained in:
Priit Tark 2015-05-08 14:25:42 +03:00
parent 12eaea6bd8
commit 08cb700069
3 changed files with 15 additions and 12 deletions

View file

@ -6,26 +6,28 @@ class Registrar::SessionsController < ::SessionsController
end
def login
@user = Depp::User.new
@depp_user = Depp::User.new
end
def create
@user = Depp::User.new(params[:depp_user].merge(
@depp_user = Depp::User.new(params[:depp_user].merge(
pki: request.env['HTTP_SSL_CLIENT_S_DN_CN'].present?
)
)
if @user.pki && request.env['HTTP_SSL_CLIENT_S_DN_CN'] != params[:depp_user][:tag]
@user.errors.add(:base, :invalid_cert)
if @depp_user.pki && request.env['HTTP_SSL_CLIENT_S_DN_CN'] != params[:depp_user][:tag]
@depp_user.errors.add(:base, :invalid_cert)
end
if @user.errors.none? && @user.valid?
session[:tag] = params[:depp_user][:tag]
session[:password] = params[:depp_user][:password]
session[:last_seen] = Time.now.to_i
session[:pki] = @user.pki
redirect_to '/registrar'
if @depp_user.errors.none? && @depp_user.valid?
@api_user = ApiUser.find_by(username: params[:depp_user][:tag])
if @api_user.active?
sign_in @api_user
redirect_to registrar_root_url
else
@depp_user.errors.add(:base, :not_active)
render 'login'
end
else
render 'login'
end

View file

@ -2,7 +2,7 @@
.form-signin.col-md-6.center-block.text-center
%h2.form-signin-heading.text-center= t(:log_in)
%hr
= form_for @user, url: registrar_sessions_path, html: {class: 'form-signin'} do |f|
= form_for @depp_user, url: registrar_sessions_path, html: {class: 'form-signin'} do |f|
= render 'registrar/shared/errors', object: f.object
- error_class = f.object.errors.any? ? 'has-error' : ''

View file

@ -528,6 +528,7 @@ en:
failed_to_open_connection_to_epp_server: 'Failed to open connection to EPP server!'
authorization_error: 'Authorization error'
invalid_cert: 'Invalid certificate'
not_active: 'User is not active'
tag:
blank: "Username can't be blank"
password: