diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-05-19 22:34:57 -0500 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-05-19 22:34:57 -0500 |
commit | af4d0b5cb0de2cbc9dd78a791fd77dab3dbddaa5 (patch) | |
tree | 3d5399b6d7c036c4cd78db6645eb72ed35123b39 /mediagoblin/user_pages/views.py | |
parent | a67fec8177c09c4e74ce7f4301b88f4e7ea6e658 (diff) | |
parent | 3eb6fc4f2f2b0a41677ab88bdd941b79e3e87b39 (diff) | |
download | mediagoblin-af4d0b5cb0de2cbc9dd78a791fd77dab3dbddaa5.tar.lz mediagoblin-af4d0b5cb0de2cbc9dd78a791fd77dab3dbddaa5.tar.xz mediagoblin-af4d0b5cb0de2cbc9dd78a791fd77dab3dbddaa5.zip |
Merge remote branch 'remotes/hanaku/pagination'
Conflicts:
mediagoblin/user_pages/views.py
Diffstat (limited to 'mediagoblin/user_pages/views.py')
-rw-r--r-- | mediagoblin/user_pages/views.py | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py index 9e9e3f51..d8665915 100644 --- a/mediagoblin/user_pages/views.py +++ b/mediagoblin/user_pages/views.py @@ -16,8 +16,11 @@ from webob import Response, exc from mediagoblin.db.util import ObjectId, DESCENDING +from mediagoblin.util import Pagination +from mediagoblin.decorators import uses_pagination +@uses_pagination def user_home(request): """'Homepage' of a User()""" user = request.db.User.find_one({ @@ -26,18 +29,27 @@ def user_home(request): if not user: return exc.HTTPNotFound() - medias = request.db.MediaEntry.find({ - 'uploader': user, - 'state': 'processed'}).sort('created', DESCENDING) + cursor = request.db.MediaEntry \ + .find({'uploader': user, 'state': 'processed'}) \ + .sort('created', DESCENDING) + + pagination = Pagination( int(request.str_GET['page']), cursor) + media_entries = pagination() + + #if no data is available, return NotFound + if media_entries == None: + return exc.HTTPNotFound() + template = request.template_env.get_template( 'mediagoblin/user_pages/user.html') + return Response( template.render( {'request': request, 'user': user, - 'media_entries': medias})) - + 'media_entries': media_entries, + 'pagination': pagination})) def media_home(request): """'Homepage' of a MediaEntry()""" @@ -56,3 +68,4 @@ def media_home(request): template.render( {'request': request, 'media': media})) + |