aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/media_types
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/media_types')
-rw-r--r--mediagoblin/media_types/image/models.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/mediagoblin/media_types/image/models.py b/mediagoblin/media_types/image/models.py
index fc518daa..b02c41d3 100644
--- a/mediagoblin/media_types/image/models.py
+++ b/mediagoblin/media_types/image/models.py
@@ -40,6 +40,18 @@ class ImageData(Base):
gps_altitude = Column(Float)
gps_direction = Column(Float)
+ def get_original_date(self):
+ import datetime
+ try:
+ # Try wrapped around all since exif_all might be none,
+ # EXIF DateTimeOriginal or printable might not exist, or
+ # strptime might not be able to parse date correctly
+ exif_date = self.exif_all['EXIF DateTimeOriginal']['printable']
+ original_date = datetime.datetime.strptime(exif_date,
+ '%Y:%m:%d %H:%M:%S')
+ return original_date
+ except:
+ return None
DATA_MODEL = ImageData
MODELS = [ImageData]