Guest User

Untitled

a guest
Jun 25th, 2018
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.79 KB | None | 0 0
  1. def register(request):
  2. if request.method == 'POST':
  3. form = UserCreationForm(request.POST)
  4.  
  5. if form.is_valid():
  6. message = None
  7.  
  8. form.save()
  9.  
  10. username = form.cleaned_data['username']
  11. password = form.cleaned_data['password1']
  12.  
  13. user = authenticate(username=username, password=password)
  14.  
  15. first_name = form.cleaned_data['first_name']
  16. last_name = form.cleaned_data['last_name']
  17. email = user.email
  18.  
  19. # If valid new user account
  20. if (user is not None) and (user.is_active):
  21. login(request, user)
  22. message = "<strong>Congratulations!</strong> You have been registered."
  23.  
  24. # Send emails
  25. try:
  26. # Admin email
  27. pk = None
  28. try: pk = User.objects.filter(username=username)[0].pk
  29. except: pass
  30.  
  31. admin_email_template = loader.get_template('accounts/email_notify_admin_of_registration.txt')
  32. admin_email_context = Context({
  33. 'first_name': first_name,
  34. 'last_name': last_name,
  35. 'username': username,
  36. 'email': email,
  37. 'pk': pk,
  38. })
  39. admin_email_body = admin_email_template.render(admin_email_context)
  40. mail_admins("New User Registration", admin_email_body)
  41.  
  42. # User email
  43. user_email_template = loader.get_template('accounts/email_registration_success.txt')
  44. user_email_context = Context({
  45. 'first_name': form.cleaned_data['first_name'],
  46. 'username': username,
  47. 'password': password,
  48. })
  49. user_email_body = user_email_template.render(user_email_context)
  50. user.email_user("Successfully Registered at example.com", user_email_body)
  51. except:
  52. message = "There was an error sending you the confirmation email. You should still be able to login normally."
  53. else:
  54. message = "There was an error automatically logging you in. Try <a href="/login/">logging in</a> manually."
  55.  
  56. # Display success page
  57. return render_to_response('accounts/register_success.html', {
  58. 'username': username,
  59. 'message': message,
  60. },
  61. context_instance=RequestContext(request)
  62. )
  63. else: # If not POST
  64. form = UserCreationForm()
  65.  
  66. return render_to_response('accounts/register.html', {
  67. 'form': form,
  68. },
  69. context_instance=RequestContext(request)
  70. )
  71.  
  72. pk = None
  73. try: pk = User.objects.filter(username=username)[0].pk
  74. except: pass
  75.  
  76. try:
  77. user = User.objects.get(username=username)
  78. except User.DoesNotExist:
  79. user = None
  80.  
  81. try:
  82. ... a line of code that can generate exceptions to be handled ...
  83. except SomeException:
  84. ... handle this particular exception ...
  85. else:
  86. ... the rest of the code to execute if there were no exceptions ...
  87.  
  88. def register(request):
  89. if request.method != 'POST':
  90. form = UserCreationForm()
  91. return render_to_response('accounts/register.html',
  92. { 'form': form, },
  93. context_instance=RequestContext(request)
  94. )
  95.  
  96. form = UserCreationForm(request.POST)
  97. if not form.is_valid():
  98. return render_to_response('accounts/register.html',
  99. { 'form': form, },
  100. context_instance=RequestContext(request)
  101. )
  102. ...
Add Comment
Please, Sign In to add comment