middleware.py 521 B

12345678910111213141516
  1. from django.utils.functional import SimpleLazyObject
  2. from .enabledproviders import get_enabled_providers
  3. def socialauth_providers_middleware(get_response):
  4. """Sets request.socialauth attribute with dict of setup social auth providers."""
  5. def middleware(request):
  6. def lazily_get_enabled_providers():
  7. return get_enabled_providers(request.cache_versions)
  8. request.socialauth = SimpleLazyObject(lazily_get_enabled_providers)
  9. return get_response(request)
  10. return middleware