summaryrefslogtreecommitdiff
path: root/website/views.py
diff options
context:
space:
mode:
authorJayaram R Pai2014-09-20 19:42:34 +0530
committerJayaram R Pai2014-09-20 19:42:34 +0530
commita254d1aa4d10d0704c9f8981400257b17c52022b (patch)
tree262b8ab89a0549f3f4de0201d164678d27e13faa /website/views.py
parentbf059d176357efa0a61d1939a5f29e598505b77f (diff)
downloadscipy2014-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.py73
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)