summaryrefslogtreecommitdiff
path: root/app/photos
diff options
context:
space:
mode:
Diffstat (limited to 'app/photos')
-rw-r--r--app/photos/models.py30
1 files changed, 24 insertions, 6 deletions
diff --git a/app/photos/models.py b/app/photos/models.py
index 50f2aa4..9ec68e0 100644
--- a/app/photos/models.py
+++ b/app/photos/models.py
@@ -59,6 +59,8 @@ class LuxImage(models.Model):
is_video = models.BooleanField(default=False)
sizes = models.ManyToManyField(LuxImageSize, blank=True)
flickr_id = models.CharField(null=True, blank=True, max_length=80)
+ twitter_link = models.CharField(null=True, blank=True, max_length=300)
+ facebook_link = models.CharField(null=True, blank=True, max_length=300)
class Meta:
ordering = ('-pub_date', 'id')
@@ -89,12 +91,27 @@ class LuxImage(models.Model):
else:
return "%s%s/%s_%s.%s" % (settings.IMAGES_URL, self.pub_date.strftime("%Y"), base, size, self.get_image_ext())
+ def get_image_path_by_size(self, size="original"):
+ base = self.get_image_name()
+ if size == "original":
+ return "%s/original/%s/%s.%s" % (settings.IMAGES_ROOT, self.pub_date.strftime("%Y"), base, self.get_image_ext())
+ else:
+ return "%s/%s/%s_%s.%s" % (settings.IMAGES_ROOT, self.pub_date.strftime("%Y"), base, size, self.get_image_ext())
+
def admin_thumbnail(self):
return force_text('<a href="%s"><img src="%s"></a>' % (self.get_image_by_size(), self.get_image_by_size("tn")))
admin_thumbnail.allow_tags = True
admin_thumbnail.short_description = 'Thumbnail'
@property
+ def latitude(self):
+ return self.point.y
+
+ @property
+ def longitude(self):
+ return self.point.x
+
+ @property
def get_previous_published(self):
return self.get_previous_by_pub_date()
@@ -115,12 +132,13 @@ class LuxImage(models.Model):
@receiver(post_save, sender=LuxImage)
def post_save_events(sender, update_fields, created, instance, **kwargs):
- filename, file_extension = os.path.splitext(instance.image.path)
- if file_extension != ".mp4":
- instance = readexif(instance)
- post_save.disconnect(post_save_events, sender=LuxImage)
- instance.save()
- post_save.connect(post_save_events, sender=LuxImage)
+ if instance.exif_raw == '':
+ filename, file_extension = os.path.splitext(instance.image.path)
+ if file_extension != ".mp4":
+ instance = readexif(instance)
+ post_save.disconnect(post_save_events, sender=LuxImage)
+ instance.save()
+ post_save.connect(post_save_events, sender=LuxImage)
@receiver(m2m_changed, sender=LuxImage.sizes.through)