diff --git a/app/models/concerns/auth_values.rb b/app/models/concerns/auth_values.rb index 0c35fb21..927c299e 100644 --- a/app/models/concerns/auth_values.rb +++ b/app/models/concerns/auth_values.rb @@ -57,13 +57,14 @@ module AuthValues end def auth_roles(user, auth) + auth['info']['roles'] = "Viewer" unless auth['info']['roles'].nil? roles = auth['info']['roles'].split(',') role_provider = auth['provider'] == "bn_launcher" ? auth['info']['customer'] : "greenlight" roles.each do |role_name| - role = Role.where(provider: role_provider, name: role_name).first - user.roles << role unless role.nil? + role = Role.find_by(provider: role_provider, name: role_name) + user.roles << role if !role.nil? && !user.has_role?(role_name) end end end