summaryrefslogtreecommitdiff
path: root/forums/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'forums/views.py')
-rw-r--r--forums/views.py86
1 files changed, 85 insertions, 1 deletions
diff --git a/forums/views.py b/forums/views.py
index b2dae90..3e82a90 100644
--- a/forums/views.py
+++ b/forums/views.py
@@ -2,16 +2,98 @@ from django.http import HttpResponse, HttpResponseRedirect
from django.contrib.auth import login, logout, authenticate
from django.shortcuts import render_to_response
from django.core.context_processors import csrf
+from django.template import RequestContext
+from django.contrib.auth.decorators import login_required
+from django.contrib.auth import authenticate, login, logout
+from django.core.mail import EmailMultiAlternatives
+from django.contrib import messages
+from django.utils import timezone
-from forums.forms import UserLoginForm
+from django.conf import settings
+
+
+
+import random, string
+
+from forums.forms import *
+
+def account_register(request):
+ context = {}
+ print "account_registration"
+ print request.method
+ if request.method == 'POST':
+ form = RegisterForm(request.POST)
+ print form
+ print form.is_valid
+ if form.is_valid():
+
+ username = request.POST['username']
+ print username
+ password = request.POST['password']
+ print password
+ email = request.POST['email']
+ print email
+ user = User.objects.create_user(username, email, password)
+ user.is_active = True
+ user.save()
+ confirmation_code = ''.join(random.choice(string.ascii_uppercase + string.digits + string.ascii_lowercase) for x in range(33))
+ #p = Profile(user=user, confirmation_code=confirmation_code)
+ #p.save()
+ #send_registration_confirmation(user)
+ messages.success(request, """
+ Please confirm your registration by clicking on the activation link which has been sent to your registered email id.
+ """)
+ return HttpResponseRedirect('/')
+ context = {'form':form}
+ return render_to_response('forums/templates/user-register.html', context,context_instance = RequestContext(request))
+ else:
+ form = RegisterForm()
+ context = {
+ 'form': form
+ }
+ context.update(csrf(request))
+ return render_to_response('forums/templates/user-register.html', context)
+
+def send_registration_confirmation(user):
+ p = Profile.objects.get(user=user)
+ #user.email = "k.sanmugam2@gmail.com"
+ # Sending email when an answer is posted
+ subject = 'Account Active Notification'
+ message = """Dear {0},
+ Thank you for registering at {1}. You may activate your account by clicking on this link or copying and pasting it in your browser
+ {2}
+ Regards,
+ Admin
+ Spoken Tutorials
+ IIT Bombay.
+ """.format(
+ user.username,
+ "http://spoken-tutorial.org",
+ "http://spoken-tutorial.org/accounts/confirm/" + str(p.confirmation_code) + "/" + user.username
+ )
+ email = EmailMultiAlternatives(
+ subject, message, 'administrator@spoken-tutorial.org',
+ to = [user.email], bcc = [], cc = [],
+ headers={'Reply-To': 'no-replay@spoken-tutorial.org', "Content-type":"text/html;charset=iso-8859-1"}
+ )
+ #email.attach_alternative(message, "text/html")
+ try:
+ result = email.send(fail_silently=False)
+ except:
+ pass
def user_login(request):
if request.user.is_anonymous():
+
if request.method == 'POST':
form = UserLoginForm(request.POST)
+
if form.is_valid():
+
cleaned_data = form.cleaned_data
+
user = cleaned_data.get("user")
+
login(request, user)
if 'next' in request.POST:
next_url = request.POST.get('next')
@@ -19,12 +101,14 @@ def user_login(request):
return HttpResponseRedirect('/')
else:
form = UserLoginForm()
+ print form.errors
next_url = request.GET.get('next')
context = {
'form': form,
'next': next_url
}
+
context.update(csrf(request))
return render_to_response('forums/templates/user-login.html', context)
else: