mirror of
https://github.com/internetee/registry.git
synced 2025-05-16 17:37:17 +02:00
Refactored to use abilites for login
This commit is contained in:
parent
f0b46469c8
commit
61e2ea9823
3 changed files with 25 additions and 12 deletions
|
@ -10,10 +10,12 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def after_sign_in_path_for(resource)
|
||||
if REGISTRY_ENV == :admin && resource.admin?
|
||||
(session[:user_return_to].nil?) ? admin_root_path : session[:user_return_to].to_s
|
||||
return session[:user_return_to].to_s if session[:user_return_to]
|
||||
|
||||
if resource.admin? && can?(:create, :admin_session)
|
||||
admin_root_path
|
||||
else
|
||||
(session[:user_return_to].nil?) ? client_root_path : session[:user_return_to].to_s
|
||||
client_root_path
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -7,14 +7,22 @@ class Ability
|
|||
|
||||
user ||= User.new
|
||||
|
||||
# public user abilites
|
||||
if Rails.env.production?
|
||||
case REGISTRY_ENV
|
||||
when :client
|
||||
can :create, :session
|
||||
|
||||
if REGISTRY_ENV == :admin
|
||||
admin = false
|
||||
when :admin
|
||||
can :create, :admin_session
|
||||
admin = user.admin?
|
||||
end
|
||||
else
|
||||
can :create, :session
|
||||
can :create, :admin_session
|
||||
admin = user.admin?
|
||||
end
|
||||
|
||||
if (Rails.env.production? ? REGISTRY_ENV == :admin && user.admin? : user.admin?)
|
||||
if admin
|
||||
can :manage, Domain
|
||||
can :switch, :registrar
|
||||
can :crud, DomainTransfer
|
||||
|
|
|
@ -21,8 +21,11 @@
|
|||
%h2.form-signin-heading.text-center Eesti Interneti SA
|
||||
%hr
|
||||
/ TODO: Refactor this when ID card login is done
|
||||
- if Rails.env.development? || (can? :create, :admin_session)
|
||||
= button_to 'ID card (gitlab)', 'sessions', class: 'btn btn-lg btn-primary btn-block', name: 'gitlab'
|
||||
- if can? :create, :admin_session
|
||||
= button_to 'ID card (gitlab)', 'sessions',
|
||||
class: 'btn btn-lg btn-primary btn-block', name: 'gitlab'
|
||||
- if can? :create, :session
|
||||
= button_to 'ID card (zone)', 'sessions', class: 'btn btn-lg btn-primary btn-block', name: 'zone'
|
||||
= button_to 'ID card (elkdata)', 'sessions', class: 'btn btn-lg btn-primary btn-block', name: 'elkdata'
|
||||
= button_to 'ID card (zone)', 'sessions',
|
||||
class: 'btn btn-lg btn-primary btn-block', name: 'zone'
|
||||
= button_to 'ID card (elkdata)', 'sessions',
|
||||
class: 'btn btn-lg btn-primary btn-block', name: 'elkdata'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue