aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/db
diff options
context:
space:
mode:
authorChristopher Allan Webber <cwebber@dustycloud.org>2011-07-16 16:28:12 -0500
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-07-16 16:28:12 -0500
commit5f72a4c3314a6e6c0d05d916f380557fdf744d57 (patch)
tree1e6958635f398cf29089a082bd62727bcdf11ff1 /mediagoblin/db
parent8e9331c1069e5c5bcf1b8d68b59eeff63123fd14 (diff)
parent380ac094f6ebcf7b457d98a86ac7cc0af2347ba4 (diff)
downloadmediagoblin-5f72a4c3314a6e6c0d05d916f380557fdf744d57.tar.lz
mediagoblin-5f72a4c3314a6e6c0d05d916f380557fdf744d57.tar.xz
mediagoblin-5f72a4c3314a6e6c0d05d916f380557fdf744d57.zip
Merge remote branch 'remotes/jwandborg/feature_400-resize_images_to_fit_page'
Conflicts: mediagoblin/db/migrations.py mediagoblin/db/models.py mediagoblin/process_media/__init__.py mediagoblin/templates/mediagoblin/user_pages/media.html mediagoblin/util.py
Diffstat (limited to 'mediagoblin/db')
-rw-r--r--mediagoblin/db/models.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/mediagoblin/db/models.py b/mediagoblin/db/models.py
index ba8162ed..9d7bcf6b 100644
--- a/mediagoblin/db/models.py
+++ b/mediagoblin/db/models.py
@@ -21,7 +21,11 @@ from mongokit import Document
from mediagoblin import util
from mediagoblin.auth import lib as auth_lib
from mediagoblin import mg_globals
+from mediagoblin.db import migrations
from mediagoblin.db.util import ASCENDING, DESCENDING, ObjectId
+from mediagoblin.util import Pagination
+from mediagoblin.util import DISPLAY_IMAGE_FETCHING_ORDER
+
###################
# Custom validators
@@ -108,6 +112,24 @@ class MediaEntry(Document):
return self.db.MediaComment.find({
'media_entry': self['_id']}).sort('created', DESCENDING)
+ def get_display_media(self, media_map, fetch_order=DISPLAY_IMAGE_FETCHING_ORDER):
+ """
+ Find the best media for display.
+
+ Args:
+ - media_map: a dict like
+ {u'image_size': [u'dir1', u'dir2', u'image.jpg']}
+ - fetch_order: the order we should try fetching images in
+
+ Returns:
+ (media_size, media_path)
+ """
+ media_sizes = media_map.keys()
+
+ for media_size in DISPLAY_IMAGE_FETCHING_ORDER:
+ if media_size in media_sizes:
+ return media_map[media_size]
+
def main_mediafile(self):
pass