示例#1
0
文件: views.py 项目: hitzi/MapOSMatic
def new(request):
    """The map creation page and form."""

    if request.method == 'POST':
        form = forms.MapRenderingJobForm(request.POST)
        if form.is_valid():
            job = form.save(commit=False)
            job.administrative_osmid = form.cleaned_data.get(
                'administrative_osmid')

            existing = helpers.rendering_already_exists(job)
            if existing:
                request.session['redirected'] = True
                return HttpResponseRedirect(
                    reverse('job-by-id', args=[existing]))

            job.status = 0  # Submitted
            job.submitterip = request.META['REMOTE_ADDR']
            job.map_language = form.cleaned_data.get('map_language')
            job.index_queue_at_submission = (
                models.MapRenderingJob.objects.queue_size())
            job.nonce = helpers.generate_nonce(
                models.MapRenderingJob.NONCE_SIZE)
            job.save()

            return HttpResponseRedirect(
                reverse('job-by-id-and-nonce', args=[job.id, job.nonce]))
    else:
        form = forms.MapRenderingJobForm()

    return render_to_response('maposmatic/new.html', {'form': form},
                              context_instance=RequestContext(request))
示例#2
0
def recreate(request):
    if request.method == 'POST':
        form = forms.MapRecreateForm(request.POST)
        if form.is_valid():
            job = get_object_or_404(models.MapRenderingJob,
                                    id=form.cleaned_data['id'])

            newjob = models.MapRenderingJob()
            newjob.maptitle = job.maptitle

            newjob.administrative_city = job.administrative_city
            newjob.administrative_osmid = job.administrative_osmid

            newjob.lat_upper_left = job.lat_upper_left
            newjob.lon_upper_left = job.lon_upper_left
            newjob.lat_bottom_right = job.lat_bottom_right
            newjob.lon_bottom_right = job.lon_bottom_right

            newjob.stylesheet = job.stylesheet
            newjob.layout = job.layout
            newjob.paper_width_mm = job.paper_width_mm
            newjob.paper_height_mm = job.paper_height_mm

            newjob.status = 0 # Submitted
            newjob.submitterip = request.META['REMOTE_ADDR']
            newjob.map_language = job.map_language
            newjob.index_queue_at_submission = (models.MapRenderingJob.objects
                                               .queue_size())
            newjob.nonce = helpers.generate_nonce(models.MapRenderingJob.NONCE_SIZE)
            newjob.save()

            return HttpResponseRedirect(reverse('map-by-id-and-nonce',
                                                args=[newjob.id, newjob.nonce]))

    return HttpResponseBadRequest("ERROR: Invalid request")
示例#3
0
def new(request):
    """The map creation page and form."""

    if request.method == 'POST':
        form = forms.MapRenderingJobForm(request.POST)
        if form.is_valid():
            job = form.save(commit=False)
            job.administrative_osmid = form.cleaned_data.get('administrative_osmid')
            job.stylesheet = form.cleaned_data.get('stylesheet')
            job.layout = form.cleaned_data.get('layout')
            job.paper_width_mm = form.cleaned_data.get('paper_width_mm')
            job.paper_height_mm = form.cleaned_data.get('paper_height_mm')
            job.status = 0 # Submitted
            job.submitterip = request.META['REMOTE_ADDR']
            job.map_language = form.cleaned_data.get('map_language')
            job.index_queue_at_submission = (models.MapRenderingJob.objects
                                             .queue_size())
            job.nonce = helpers.generate_nonce(models.MapRenderingJob.NONCE_SIZE)
            job.save()

            return HttpResponseRedirect(reverse('map-by-id-and-nonce',
                                                args=[job.id, job.nonce]))
    else:
        form = forms.MapRenderingJobForm()

    return render_to_response('maposmatic/new.html',
                              { 'form' : form },
                              context_instance=RequestContext(request))
示例#4
0
def new(request):
    """The map creation page and form."""

    if request.method == 'POST':
        form = forms.MapRenderingJobForm(request.POST)
        if form.is_valid():
            job = form.save(commit=False)
            job.administrative_osmid = form.cleaned_data.get(
                'administrative_osmid')
            job.stylesheet = form.cleaned_data.get('stylesheet')
            job.overlay = form.cleaned_data.get('overlay')
            job.layout = form.cleaned_data.get('layout')
            job.paper_width_mm = form.cleaned_data.get('paper_width_mm')
            job.paper_height_mm = form.cleaned_data.get('paper_height_mm')
            job.status = 0  # Submitted
            job.submitterip = request.META['REMOTE_ADDR']
            job.map_language = form.cleaned_data.get('map_language')
            job.index_queue_at_submission = (
                models.MapRenderingJob.objects.queue_size())
            job.nonce = helpers.generate_nonce(
                models.MapRenderingJob.NONCE_SIZE)
            job.save()

            return HttpResponseRedirect(
                reverse('map-by-id-and-nonce', args=[job.id, job.nonce]))
    else:
        form = forms.MapRenderingJobForm()

    return render_to_response('maposmatic/new.html', {'form': form},
                              context_instance=RequestContext(request))