app/projrev/views/proposal.py
changeset 6 17cab73c49eb
parent 5 88ae12bc6280
child 8 294ff7ac9cb6
equal deleted inserted replaced
5:88ae12bc6280 6:17cab73c49eb
    12 import time
    12 import time
    13 
    13 
    14 from django.core.urlresolvers import reverse
    14 from django.core.urlresolvers import reverse
    15 from django.http import HttpResponseRedirect
    15 from django.http import HttpResponseRedirect
    16 from django.shortcuts import render_to_response, get_object_or_404
    16 from django.shortcuts import render_to_response, get_object_or_404
       
    17 from django.template import RequestContext
    17 
    18 
    18 from projrev.models import Project
    19 from projrev.models import Project
    19 from projrev.models import Proposal
    20 from projrev.models import Proposal
    20 from projrev.views.helpers import access 
    21 from projrev.views.helpers import access 
    21 from projrev.views.helpers import forms as projrev_forms
    22 from projrev.views.helpers import forms as projrev_forms
    22 
    23 
    23 rights = {}
    24 
    24 rights['getMicr'] = 'proposer'
    25 @access.checkAccess
    25 
       
    26 
       
    27 def getMicr(request):
    26 def getMicr(request):
    28   """View to get MICR Code from the user.
    27   """View to get MICR Code from the user.
    29   """
    28   """
    30 
    29 
    31   if request.method == 'POST':
    30   if request.method == 'POST':
    44               submit == 'Withdraw Proposal for MICR Code'):
    43               submit == 'Withdraw Proposal for MICR Code'):
    45             template = 'projrev/proposal/get_micr.html'
    44             template = 'projrev/proposal/get_micr.html'
    46             context = {
    45             context = {
    47                 'error': True,
    46                 'error': True,
    48                 }
    47                 }
    49             return render_to_response(template, context)
    48             return render_to_response(template,
       
    49                                       RequestContext(request, context))
    50         else:
    50         else:
    51           if submit == 'Edit Proposal for MICR Code':
    51           if submit == 'Edit Proposal for MICR Code':
    52             return HttpResponseRedirect(
    52             return HttpResponseRedirect(
    53                 reverse('app.projrev.views.proposal.submit', 
    53                 reverse('app.projrev.views.proposal.submit', 
    54                         args=(micr_code, )))
    54                         args=(micr_code, )))
    58                         args=(micr_code, )))
    58                         args=(micr_code, )))
    59   else:
    59   else:
    60     template = 'projrev/proposal/get_micr.html'
    60     template = 'projrev/proposal/get_micr.html'
    61     context = {}
    61     context = {}
    62 
    62 
    63     return render_to_response(template, context)
    63     return render_to_response(template, RequestContext(request, context))
    64 
    64 
       
    65 
       
    66 @access.checkAccess
    65 def submit(request, micr_code=None):
    67 def submit(request, micr_code=None):
    66   """View for proposal submission.
    68   """View for proposal submission.
    67   """
    69   """
    68 
    70 
    69   if request.method == 'POST':
    71   if request.method == 'POST':
   158 
   160 
   159   context['form'] = prop_form
   161   context['form'] = prop_form
   160 
   162 
   161   template = 'projrev/proposal/submit.html'
   163   template = 'projrev/proposal/submit.html'
   162 
   164 
   163   return render_to_response(template, context)
   165   return render_to_response(template, RequestContext(request, context))
   164 
   166 
       
   167 @access.checkAccess
   165 def withdraw(request, micr_code=None):
   168 def withdraw(request, micr_code=None):
   166   """View Method for withdrawal of proposal.
   169   """View Method for withdrawal of proposal.
   167   """
   170   """
   168 
   171 
   169   if micr_code:
   172   if micr_code:
   175           'withdrawn': True,
   178           'withdrawn': True,
   176       }
   179       }
   177 
   180 
   178   template = 'projrev/proposal/withdraw.html'
   181   template = 'projrev/proposal/withdraw.html'
   179 
   182 
   180   return render_to_response(template, context)
   183   return render_to_response(template, RequestContext(request, context))
   181 
   184 
       
   185 @access.checkAccess
   182 def review(request, micr_code=None):
   186 def review(request, micr_code=None):
   183   """View for reviewing the proposal.
   187   """View for reviewing the proposal.
   184   """
   188   """
   185 
   189 
   186   if request.method == 'POST':
   190   if request.method == 'POST':
   214     context = {
   218     context = {
   215         'projects': Project.objects.all(),
   219         'projects': Project.objects.all(),
   216         'row_url': '/proposal/review/',
   220         'row_url': '/proposal/review/',
   217         }
   221         }
   218 
   222 
   219     return render_to_response(template, context)
   223     return render_to_response(template, RequestContext(request, context))
   220 
   224 
   221   if not rev_form:
   225   if not rev_form:
   222     rev_form = projrev_forms.ReviewForm()
   226     rev_form = projrev_forms.ReviewForm()
   223 
   227 
   224   proposal_path = str(Project.objects.get(
   228   proposal_path = str(Project.objects.get(
   233       'proposal_name': proposal_name,
   237       'proposal_name': proposal_name,
   234       }
   238       }
   235 
   239 
   236   template = 'projrev/proposal/review.html'
   240   template = 'projrev/proposal/review.html'
   237 
   241 
   238   return render_to_response(template, context)
   242   return render_to_response(template, RequestContext(request, context))
   239 
   243 
       
   244 @access.checkAccess
   240 def rank(request, micr_code=None):
   245 def rank(request, micr_code=None):
   241   """
   246   """
   242   """
   247   """
   243 
   248 
   244   if request.method == 'POST':
   249   if request.method == 'POST':
   261     context = {
   266     context = {
   262         'projects': Project.objects.all(),
   267         'projects': Project.objects.all(),
   263         'row_url': '/proposal/rank/',
   268         'row_url': '/proposal/rank/',
   264         }
   269         }
   265 
   270 
   266     return render_to_response(template, context)
   271     return render_to_response(template, RequestContext(request, context))
   267 
   272 
   268   projects = Project.objects.get(micr_code=micr_code)
   273   projects = Project.objects.get(micr_code=micr_code)
   269 
   274 
   270   proposal_path = str(projects.proposal_set.all()[0].document)
   275   proposal_path = str(projects.proposal_set.all()[0].document)
   271 
   276 
   295       'total_score': total_score,
   300       'total_score': total_score,
   296       }
   301       }
   297 
   302 
   298   template = 'projrev/proposal/rank.html'
   303   template = 'projrev/proposal/rank.html'
   299 
   304 
   300   return render_to_response(template, context)
   305   return render_to_response(template, RequestContext(request, context))