def uploadFormCiclovia(request): if request.method=='POST': json_data = json.loads(request.body) CicloviaScript.buildCicloviaFromJson(json_data, request.user) return HttpResponseRedirect(reverse('CicloviaProgram:userModels')) else: return render(request,'ciclovia/uploadFormCiclovia.html')
def upload(request): if request.method == 'POST': form = UploadForm(request.POST, request.FILES) if form.is_valid(): newdoc = Document(filename = request.POST['filename'], docfile = request.FILES['docfile']) newdoc.save(form) name = settings.MEDIA_ROOT + str(newdoc.docfile) CicloviaScript.buildCiclovia(name, request.user) return HttpResponseRedirect(reverse('CicloviaProgram:userModels')) else: form = UploadForm() return render(request, 'ciclovia/upload.html', {'form': form})
def simulationResultsValidation(request, ciclovia_id): ciclovia = get_object_or_404(Ciclovia, pk=ciclovia_id) if not (ciclovia.user == request.user or request.user.is_superuser): raise PermissionDenied results_id = CicloviaScript.simulationExecution(ciclovia_id,True) return HttpResponseRedirect(reverse('CicloviaProgram:simulationResultsValidationOld', args=[ciclovia_id])+unicode("?results_id=" + str(results_id),'utf-8'))
def uploadArrivalInfo(request, ciclovia_id): ciclovia = get_object_or_404(Ciclovia, pk=ciclovia_id) if not (ciclovia.user == request.user or request.user.is_superuser): raise PermissionDenied if request.method == 'POST': form = UploadForm(request.POST, request.FILES) if form.is_valid(): newdoc = Document(filename = request.POST['filename'] ,docfile = request.FILES['docfile']) newdoc.save(form) name = settings.MEDIA_ROOT + str(newdoc.docfile) cicloviaToLoad = CicloviaScript.loadCiclovia(ciclovia_id) CicloviaScript.assignArrivalInfo(cicloviaToLoad, ciclovia_id, name) cicloviaLoad = get_object_or_404(Ciclovia, pk=ciclovia_id) return render(request, 'ciclovia/detailArrival.html', {'ciclovia': cicloviaLoad}) else: return render(request, 'ciclovia/upload.html', {'form': form}) else: form = UploadForm() return render(request, 'ciclovia/upload.html', {'form': form})
def compareSimulations(request): """Compara las simulaciones de dos ciclovías.""" if not request.user.is_superuser: ciclovias = Ciclovia.objects.filter(user=request.user).order_by('-name') else: ciclovias = Ciclovia.objects.order_by('-name') if request.method == 'GET': return render(request,"ciclovia/compararCiclovias.html",{'ciclovias':ciclovias}) elif request.method == 'POST': simulation1 = get_object_or_404(SimulationResultsCompiled, pk=request.POST['simulation1']) simulation2 = get_object_or_404(SimulationResultsCompiled, pk=request.POST['simulation2']) simulationComp = CicloviaScript.simulationComp(simulation1,simulation2) return render(request,"ciclovia/compareSimulationsResults.html", {'simulation1':simulation1,'simulation2':simulation2, 'simulationComp':simulationComp})
def inverseSimulationExecution(request, ciclovia_id): ciclovia = get_object_or_404(Ciclovia, pk=ciclovia_id) if not (ciclovia.user == request.user or request.user.is_superuser): raise PermissionDenied results_id = CicloviaScript.inverseSimulation(ciclovia_id) return render(request, 'ciclovia/inverseSimulationWarning.html', {'ciclovia':ciclovia_id})
def copiarCiclovia(request, ciclovia_id): CicloviaScript.copyCiclovia(ciclovia_id, request.POST['nombre'], request.user) return HttpResponseRedirect(reverse('CicloviaProgram:userModels'))