Merge branch 'site-osm-baustelle' of https://github.com/hholzgra/maposmatic into site-osm-baustelle

dev-mapofmaps
Hartmut Holzgraefe 2017-07-01 13:21:22 +02:00
commit 67e5a434c7
6 zmienionych plików z 43 dodań i 1 usunięć

Wyświetl plik

@ -305,6 +305,15 @@ class JobRenderer(threading.Thread):
self.job.lat_bottom_right,
self.job.lon_bottom_right)
if self.job.track and self.job.track_bbox_mode:
gpx_bbox = ocitysmap.coords.BoundingBox.parse_gpx(os.path.join(MEDIA_ROOT, self.job.track.url))
if self.job.track_bbox_mode == 1:
# 1 -> merge GPX and map bounding box
config.bounding_box.merge(gpx_bbox)
elif self.job.track_bbox_mode == 2:
# 2 -> replace map bbox with GPX bbox
config.bounding_box = gpx_bbox
config.language = self.job.map_language
config.stylesheet = renderer.get_stylesheet_by_name(
self.job.stylesheet)
@ -316,6 +325,7 @@ class JobRenderer(threading.Thread):
config.gpx_file = os.path.join(MEDIA_ROOT, self.job.track.name)
else:
config.gpx_file = False
config.track_bbox_mode = 0
config.paper_width_mm = self.job.paper_width_mm
config.paper_height_mm = self.job.paper_height_mm
except KeyboardInterrupt:

Wyświetl plik

@ -54,7 +54,7 @@ class MapRenderingJobForm(forms.ModelForm):
fields = ('maptitle', 'administrative_city',
'lat_upper_left', 'lon_upper_left',
'lat_bottom_right', 'lon_bottom_right',
'track')
'track', 'track_bbox_mode')
MODES = (('admin', _('Administrative boundary')),
('bbox', _('Bounding box')))

Wyświetl plik

@ -0,0 +1,19 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('maposmatic', '0007_auto_20170521_0155'),
]
operations = [
migrations.AddField(
model_name='maprenderingjob',
name='track_bbox_mode',
field=models.IntegerField(default=0, choices=[(0, b'Keep'), (1, b'Merge'), (2, b'Replace')]),
),
]

Wyświetl plik

@ -122,7 +122,14 @@ class MapRenderingJob(models.Model):
def __str__(self):
return self.maptitle.encode('utf-8')
TRACKBOX_BBOX_MODE_LIST = (
( 0, 'Keep'),
( 1, 'Merge'),
( 2, 'Replace')
)
track = models.FileField(upload_to='upload/tracks/%Y/%m/%d/', null=True, blank=True)
track_bbox_mode = models.IntegerField(choices=TRACKBOX_BBOX_MODE_LIST, default=0)
def maptitle_computized(self):
t = self.maptitle.strip()

Wyświetl plik

@ -205,7 +205,9 @@ def recreate(request):
newjob.index_queue_at_submission = (models.MapRenderingJob.objects
.queue_size())
newjob.nonce = helpers.generate_nonce(models.MapRenderingJob.NONCE_SIZE)
newjob.track = job.track
newjob.track_bbox_mode = job.track_bbox_mode
newjob.save()
return HttpResponseRedirect(reverse('map-by-id-and-nonce',

Wyświetl plik

@ -211,6 +211,10 @@ will be visible on the map.{% endblocktrans %}
<legend>{% trans "Optional GPX track file" %}</legend>
{{ form.track }}
</fieldset>
<fieldset id="track-bbox-mode">
<legend>{% trans "BBOX mode" %}</legend>
{{ form.track_bbox_mode }}
</fieldset>
</div>
</div>