diff options
-rw-r--r-- | app/photos/models.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/app/photos/models.py b/app/photos/models.py index 039ce47..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 == '': |