Module: GDS::SSO::User
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/gds-sso/user.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #clear_remotely_signed_out! ⇒ Object
- #has_permission?(scope, permission) ⇒ Boolean
- #included(base) ⇒ Object
- #set_remotely_signed_out! ⇒ Object
Class Method Details
.user_params_from_auth_hash(auth_hash) ⇒ Object
40 41 42 43 44 45 46 47 |
# File 'lib/gds-sso/user.rb', line 40 def self.user_params_from_auth_hash(auth_hash) { 'uid' => auth_hash['uid'], 'email' => auth_hash['info']['email'], 'name' => auth_hash['info']['name'], 'permissions' => auth_hash['extra']['user']['permissions'] } end |
Instance Method Details
#clear_remotely_signed_out! ⇒ Object
49 50 51 |
# File 'lib/gds-sso/user.rb', line 49 def clear_remotely_signed_out! self.update_attribute(:remotely_signed_out, false) end |
#has_permission?(scope, permission) ⇒ Boolean
34 35 36 37 38 |
# File 'lib/gds-sso/user.rb', line 34 def (scope, ) if && .has_key?(scope) [scope].include?() || [scope].include?("admin") end end |
#included(base) ⇒ Object
30 31 32 |
# File 'lib/gds-sso/user.rb', line 30 def included(base) attr_accessible :uid, :email, :name, :permissions, as: :oauth end |
#set_remotely_signed_out! ⇒ Object
53 54 55 |
# File 'lib/gds-sso/user.rb', line 53 def set_remotely_signed_out! self.update_attribute(:remotely_signed_out, true) end |