app/projrev/views/proposal.py
changeset 46 e27c75dedbfb
parent 45 9ffe957d6159
equal deleted inserted replaced
45:9ffe957d6159 46:e27c75dedbfb
   231     return reviewGet(request, micr_code, review_id)
   231     return reviewGet(request, micr_code, review_id)
   232 
   232 
   233 def reviewPost(request, micr_code=None, review_id=None):
   233 def reviewPost(request, micr_code=None, review_id=None):
   234   """
   234   """
   235   """
   235   """
   236 
   236   is_new = request.GET.get('new')
   237   if review_id:
   237   if review_id and is_new != '0':
       
   238     redirect = False
   238     review_instance = Review.objects.get(id=review_id)
   239     review_instance = Review.objects.get(id=review_id)
   239     rev_form = projrev_forms.ReviewForm(request.POST, instance=review_instance)
   240     rev_form = projrev_forms.ReviewForm(request.POST, instance=review_instance)
   240   else:
   241   else:
       
   242     redirect = True
   241     rev_form = projrev_forms.ReviewForm(request.POST)
   243     rev_form = projrev_forms.ReviewForm(request.POST)
   242 
   244 
   243   if rev_form.is_valid():
   245   if rev_form.is_valid():
   244     cleaned_data = rev_form.cleaned_data
   246     cleaned_data = rev_form.cleaned_data
   245 
   247 
   251     cleaned_data['reviewer'] = request.user
   253     cleaned_data['reviewer'] = request.user
   252 
   254 
   253     # If the form is valid create a new project or update the project
   255     # If the form is valid create a new project or update the project
   254     # if it already exists from the form.
   256     # if it already exists from the form.
   255     review = rev_form.save()
   257     review = rev_form.save()
   256     return HttpResponseRedirect(
   258 
   257         reverse('app.projrev.views.proposal.rank', args=(micr_code,)))
   259     if redirect:
       
   260       return HttpResponseRedirect(reverse('app.projrev.views.proposal.review', args=(micr_code, review.id)))
   258 
   261 
   259   return reviewGet(request, micr_code, review_id, rev_form)
   262   return reviewGet(request, micr_code, review_id, rev_form)
   260 
   263 
   261 def reviewGet(request, micr_code=None, review_id=None, rev_form=None):
   264 def reviewGet(request, micr_code=None, review_id=None, rev_form=None):
   262   """
   265   """