diff options
author | luxagraf <sng@luxagraf.net> | 2017-10-06 10:38:50 -0700 |
---|---|---|
committer | luxagraf <sng@luxagraf.net> | 2017-10-06 10:38:50 -0700 |
commit | 57eaedbddadef9e0a3a5651f57a9ad8a2049cc61 (patch) | |
tree | 16c6ad8a1858c16d7b079b8134358a46bfd0e592 /app | |
parent | 54591c4c0f90cd221f30136c82039d25eab2eb8c (diff) | |
parent | 8b1987da496bde09a66e32c44a296621fe779f5b (diff) |
Merge branch 'master' of ssh://stats:/home/lxf/git/luxagraf
Diffstat (limited to 'app')
-rw-r--r-- | app/photos/admin.py | 1 | ||||
-rw-r--r-- | app/photos/models.py | 14 |
2 files changed, 14 insertions, 1 deletions
diff --git a/app/photos/admin.py b/app/photos/admin.py index fbedc73..3211a06 100644 --- a/app/photos/admin.py +++ b/app/photos/admin.py @@ -29,6 +29,7 @@ class LuxImageAdmin(OSMGeoAdmin): list_display = ('pk', 'admin_thumbnail', 'pub_date', 'location') list_filter = ('pub_date', 'location') search_fields = ['title', 'caption'] + list_editable = ('location',) # Options for OSM map Using custom ESRI topo map default_lon = -9285175 default_lat = 4025046 diff --git a/app/photos/models.py b/app/photos/models.py index 0d123c3..603e2d1 100644 --- a/app/photos/models.py +++ b/app/photos/models.py @@ -164,6 +164,18 @@ class LuxImage(models.Model): else: return False + def save(self): + if not self.point: + self.point = LuxImage.objects.latest().point + try: + self.location = Location.objects.filter( + geometry__contains=self.point + ).get() + except Location.DoesNotExist: + raise forms.ValidationError("There is no location associated with that point, add it: %sadmin/locations/location/add/" % (settings.BASE_URL)) + super(LuxImage, self).save() + + @receiver(post_save, sender=LuxImage) def post_save_events(sender, update_fields, created, instance, **kwargs): if instance.exif_raw == '': @@ -172,7 +184,7 @@ def post_save_events(sender, update_fields, created, instance, **kwargs): img = Image.open(instance.image.path) instance.height = img.height instance.width = img.width - instance = readexif(instance) + #instance = readexif(instance) post_save.disconnect(post_save_events, sender=LuxImage) instance.save() post_save.connect(post_save_events, sender=LuxImage) |