def reqedit(request, reqid=None): ''' controller for individual numerical requirement edit page ''' req = get_object_or_404(NumericalRequirement, pk=reqid) # get my urls urls = genurls() if request.method == 'POST': cancel = request.POST.get('cancel', None) if cancel: urls['reqview']=reverse('cimexpgen.apps.expgenapp.views.reqview', args=(req.id, )) return HttpResponseRedirect(urls['reqview']) else: reqform = RequirementForm(request.POST, instance=req) if reqform.is_valid(): req = reqform.save(commit=False) req.author = request.user req.save() # assign permissions to access this requirement assign('manage_req', request.user, req) return HttpResponseRedirect(urls['reqlist']) # Redirect after POST else: return render_to_response('page/reqedit.html', {'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request)) else: reqform = RequirementForm(instance=req) # An unbound form return render_to_response('page/reqedit.html', {'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request))
def reqadd(request): ''' controller for individual numerical requirement add page ''' req = NumericalRequirement() # get my urls urls = genurls() if request.method == 'POST': cancel = request.POST.get('cancel', None) if cancel: return HttpResponseRedirect(urls['reqlist']) else: reqform = RequirementForm(request.POST, instance=req) if reqform.is_valid(): req = reqform.save(commit=False) req.author = request.user req.save() # assign permissions to access this requirement assign('manage_req', request.user, req) return HttpResponseRedirect(urls['reqlist']) # Redirect after POST else: return render_to_response('page/reqedit.html', {'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request)) else: reqform = RequirementForm(instance=req) # An unbound form return render_to_response('page/reqedit.html', {'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request))
def expedit(request, expid=None): ''' controller for individual experiment edit page ''' exp = get_object_or_404(Experiment, pk=expid) # get my urls urls = genurls() # Deal with response if request.method == 'POST': cancel = request.POST.get('cancel', None) if cancel: # reroute back to view page urls['expview']=reverse('cimexpgen.apps.expgenapp.views.expview',args=(exp.id, )) return HttpResponseRedirect(urls['expview']) else: if 'expform' in request.POST: expform = ExperimentForm(request.POST, instance=exp, prefix='exp', user=request.user) if expform.is_valid(): #exp = expform.save(commit=False) exp = expform.save() exp.author = request.user exp.save() # assign permissions to access this experiment assign('manage_exp', request.user, exp) return HttpResponseRedirect(urls['explist']) # Redirect to list page else: return render_to_response('page/expedit.html', {'expform': expform, 'urls':urls}, context_instance=RequestContext(request)) elif 'reqform' in request.POST: reqform = RequirementForm(request.POST, instance=NumericalRequirement(), prefix='req') if reqform.is_valid(): newreq = reqform.save() exp.requirements.add(newreq) return HttpResponseRedirect(urls['explist']) # Redirect to list page else: expform = ExperimentForm(instance=exp, prefix='exp', user=request.user) # An unbound form reqform = RequirementForm(prefix='req') # An unbound form return render_to_response('page/expedit.html', {'expform': expform, 'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request))
def expadd(request): ''' controller for experiment add page ''' exp = Experiment() # get my urls urls = genurls() # Deal with response if request.method == 'POST': cancel = request.POST.get('cancel', None) if cancel: return HttpResponseRedirect(urls['explist']) else: if 'expform' in request.POST: expform = ExperimentForm(request.POST, instance=exp, prefix='exp', user=request.user) if expform.is_valid(): exp = expform.save(commit=False) exp.author = request.user exp.save() # assign permissions to access this experiment assign('manage_exp', request.user, exp) return HttpResponseRedirect(urls['explist']) # Redirect to list page else: return render_to_response('page/expedit.html', {'expform': expform, 'urls':urls}, context_instance=RequestContext(request)) elif 'reqform' in request.POST: reqform = RequirementForm(request.POST, instance=NumericalRequirement(), prefix='req') if reqform.is_valid(): newreq = reqform.save() exp.requirements.add(newreq) return HttpResponseRedirect(urls['explist']) # Redirect to list page else: expform = ExperimentForm(instance=exp, prefix='exp', user=request.user) # An unbound form reqform = RequirementForm(prefix='req') # An unbound form return render_to_response('page/expedit.html', {'expform': expform, 'reqform': reqform, 'urls':urls}, context_instance=RequestContext(request))