diff options
author | Jayaram R Pai | 2014-09-20 19:42:34 +0530 |
---|---|---|
committer | Jayaram R Pai | 2014-09-20 19:42:34 +0530 |
commit | a254d1aa4d10d0704c9f8981400257b17c52022b (patch) | |
tree | 262b8ab89a0549f3f4de0201d164678d27e13faa /website/views.py | |
parent | bf059d176357efa0a61d1939a5f29e598505b77f (diff) | |
download | scipy2014-a254d1aa4d10d0704c9f8981400257b17c52022b.tar.gz scipy2014-a254d1aa4d10d0704c9f8981400257b17c52022b.tar.bz2 scipy2014-a254d1aa4d10d0704c9f8981400257b17c52022b.zip |
completed CFP - basic testing done
Diffstat (limited to 'website/views.py')
-rw-r--r-- | website/views.py | 73 |
1 files changed, 63 insertions, 10 deletions
diff --git a/website/views.py b/website/views.py index 4cc8279..06ee8d8 100644 --- a/website/views.py +++ b/website/views.py @@ -4,29 +4,82 @@ from django.views.decorators.csrf import csrf_exempt from django.shortcuts import render from django.template import RequestContext +from website.forms import UserLoginForm, UserRegisterForm, ProposalForm +from website.models import Proposal + def home(request): - return render(request, 'website/templates/home.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/home.html') def page(request): - return render(request, 'website/templates/page.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/page.html') def venue(request): - return render(request, 'website/templates/venue.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/venue.html') def contact(request): - return render(request, 'website/templates/contact.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/contact.html') def register(request): - return render(request, 'website/templates/register.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/register.html') def schedule(request): - return render(request, 'website/templates/schedule.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/schedule.html') def sponsors(request): - return render(request, 'website/templates/sponsors.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/sponsors.html') def invited_speakers(request): - return render(request, 'website/templates/invited-speakers.html', context_instance=RequestContext(request)) + return render(request, 'website/templates/invited-speakers.html') + +def call_for_proposals(request, action=None): + context = {} + """ EDIT PROPOSAL SECTION """ + if action == 'edit': + # POST + if request.method == "POST": + if request.user.is_authenticated(): + proposal = Proposal.objects.get(user=request.user) + form = ProposalForm(request.POST, request.FILES, instance=proposal) + if form.is_valid(): + data = form.save(commit=False) + data.user = request.user + data.save() + return HttpResponseRedirect('/call-for-proposals') + else: + context['proposal_form'] = form + context['edit'] = True + return render(request, 'website/templates/call-for-proposals.html', context) + # GET + if Proposal.objects.filter(user=request.user).exists(): + proposal = Proposal.objects.get(user=request.user) + context['proposal_form'] = ProposalForm(instance=proposal) + context['edit'] = True + return render(request, 'website/templates/call-for-proposals.html', context) + else: + return HttpResponseRedirect('/call-for-proposals') + # GET -def call_for_proposals(request): - return render(request, 'website/templates/call-for-proposals.html', context_instance=RequestContext(request)) + """ NEW PROPOSAL SECTION """ + # POST + if request.method == 'POST': + if request.user.is_authenticated(): + form = ProposalForm(request.POST, request.FILES) + if form.is_valid(): + data = form.save(commit=False) + data.user = request.user + data.save() + else: + context['proposal_form'] = form + return render(request, 'website/templates/call-for-proposals.html', context) + # GET + if request.user.is_authenticated(): + # Checking whether proposal exists + if Proposal.objects.filter(user=request.user).exists(): + context['proposal'] = Proposal.objects.get(user=request.user) + else: + context['proposal_form'] = ProposalForm() + else: + context['login_form'] = UserLoginForm() + context['register_form'] = UserRegisterForm() + context.update(csrf(request)) + return render(request, 'website/templates/call-for-proposals.html', context) |