Guest User

Untitled

a guest
Jul 25th, 2018
392
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.15 KB | None | 0 0
  1. from django.conf import settings
  2. from django.contrib.auth import authenticate, login
  3. from django.contrib.auth.models import User
  4.  
  5. from registration.backends.default import DefaultBackend
  6. from registration.signals import user_registered
  7.  
  8. import commonware.log
  9. log = commonware.log.getLogger(__name__)
  10.  
  11. class ExistingUserBackend(DefaultBackend):
  12.  
  13. def post_registration_redirect(self, request, user):
  14. """
  15. Return the name of the URL to redirect to after successful
  16. user registration.
  17.  
  18. """
  19. return ('account:registration_complete', (), {})
  20.  
  21. def post_activation_redirect(self, request, user):
  22. """
  23. Return the name of the URL to redirect to after successful
  24. account activation.
  25.  
  26. """
  27. return ('account:registration_activation_complete', (), {})
  28.  
  29. def register(self, request, **kwargs):
  30. if (request.user.is_authenticated() and
  31. request.user.get_profile().is_registered()):
  32. log.info("User %s is already authenticating -- not registering",
  33. request.user)
  34. return request.user
  35.  
  36. email, password = kwargs['email'], kwargs['password1']
  37. log.info("Registering new user with email %s", email)
  38. user = User.objects.get_or_create(email=email,
  39. first_name=kwargs.get('first_name'),
  40. last_name=kwargs.get('last_name'))
  41. user.set_password(password)
  42. user.save()
  43.  
  44. user = authenticate(username=user.username, password=password)
  45. login(request, user)
  46. user_registered.send(sender=self.__class__, user=user, request=request)
  47. return user
  48.  
  49. def registration_allowed(self, request):
  50. allowed = getattr(settings, 'REGISTRATION_OPEN', True)
  51. if not allowed:
  52. return False
  53. if not getattr(settings, 'LIMITED_REGISTRATION', False):
  54. return True
  55. return self.check_access_token(request)
  56.  
  57. def check_access_token(self, request):
  58. access_token = request.session.get('access_token', None)
  59. if access_token:
  60. # do what you need to do to validate the access token, return
  61. # True?False
  62. pass
Add Comment
Please, Sign In to add comment