module GDS::SSO::User

Public Class Methods

user_params_from_auth_hash(auth_hash) click to toggle source
# File lib/gds-sso/user.rb, line 22
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"],
    "organisation_slug" => auth_hash["extra"]["user"]["organisation_slug"],
    "organisation_content_id" => auth_hash["extra"]["user"]["organisation_content_id"],
    "disabled" => auth_hash["extra"]["user"]["disabled"],
  }
end

Public Instance Methods

clear_remotely_signed_out!() click to toggle source
# File lib/gds-sso/user.rb, line 34
def clear_remotely_signed_out!
  update_attribute(:remotely_signed_out, false)
end
has_all_permissions?(required_permissions) click to toggle source
# File lib/gds-sso/user.rb, line 14
def has_all_permissions?(required_permissions)
  if permissions
    required_permissions.all? do |required_permission|
      permissions.include?(required_permission)
    end
  end
end
has_permission?(permission) click to toggle source
# File lib/gds-sso/user.rb, line 8
def has_permission?(permission)
  if permissions
    permissions.include?(permission)
  end
end
set_remotely_signed_out!() click to toggle source
# File lib/gds-sso/user.rb, line 38
def set_remotely_signed_out!
  update_attribute(:remotely_signed_out, true)
end