Rails.application.config.middleware.use OmniAuth::Builder do
  okta_domain = ENV['OKTA_DOMAIN'].to_s

  if okta_domain.present?
    provider :okta, ENV['OKTA_CLIENT_ID'], ENV['OKTA_CLIENT_SECRET'],
             {
               client_options: {
                 auth_scheme:   :basic_auth,
                 site:          "https://#{okta_domain}/oauth2/default",
                 authorize_url: "https://#{okta_domain}/oauth2/default/v1/authorize",
                 token_url:     "https://#{okta_domain}/oauth2/default/v1/token",
                 user_info_url: "https://#{okta_domain}/oauth2/default/v1/userinfo"
               },
               authorize_params: {
                 prompt: 'login'
               },
               token_params: {
                 client_id: ENV['OKTA_CLIENT_ID'],
                 client_secret: ENV['OKTA_CLIENT_SECRET']
               },
               scope: 'openid profile email'
             }
  end
end
