Class: Audiences::ExternalUser
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- Audiences::ExternalUser
- Defined in:
- app/models/audiences/external_user.rb
Constant Summary collapse
- TERRITORY_ABBRS =
{ "Philadelphia" => "PHL", "New Jersey" => "NJ", "Maryland" => "MD", "Connecticut" => "CT", "Long Island" => "LI", "Boston" => "BOS", "Atlanta" => "ATL", "Chicago" => "CHI", "Detroit" => "DET", "Houston" => "HOU", "Dallas" => "DAL", "Denver" => "DEN", "Tampa" => "TPA", "Austin" => "AUS", "Charlotte" => "CLT", "Nashville" => "NSH", "Phoenix" => "PHX", "Pittsburgh" => "PIT", "San Antonio" => "SAO", "Fort Lauderdale" => "FLL", "Las Vegas" => "LVS", "Orlando" => "ORL", "Cincinnati" => "CIN", "Columbus" => "CLB", "Jacksonville" => "JAX", }.freeze
Instance Method Summary collapse
- #as_json ⇒ Object
- #as_scim ⇒ Object
- #groups_as_scim ⇒ Object
- #picture_urls ⇒ Object
- #picture_urls=(urls) ⇒ Object
Instance Method Details
#as_json ⇒ Object
66 67 68 |
# File 'app/models/audiences/external_user.rb', line 66 def as_json(...) as_scim.slice(*Audiences.exposed_user_attributes) end |
#as_scim ⇒ Object
70 71 72 |
# File 'app/models/audiences/external_user.rb', line 70 def as_scim(...) (data || {}).merge(groups_as_scim) end |
#groups_as_scim ⇒ Object
74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'app/models/audiences/external_user.rb', line 74 def groups_as_scim names = groups.reduce({}) { |nam, group| nam.merge(group.resource_type => group.display_name) } { "groups" => groups.map { |g| { "value" => g.scim_id, "display" => g.display_name } }, "title" => names["Titles"], "urn:ietf:params:scim:schemas:extension:authservice:2.0:User" => { "role" => names["Roles"], "department" => names["Departments"], "territory" => names["Territories"], "territoryAbbr" => TERRITORY_ABBRS[names["Territories"]] }, } end |
#picture_urls ⇒ Object
60 |
# File 'app/models/audiences/external_user.rb', line 60 def picture_urls = [picture_url] |
#picture_urls=(urls) ⇒ Object
62 63 64 |
# File 'app/models/audiences/external_user.rb', line 62 def picture_urls=(urls) self.picture_url = urls&.first end |