aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/user_pages
diff options
context:
space:
mode:
authorBoris Bobrov <breton@cynicmansion.ru>2014-08-16 17:41:37 +0300
committerBoris Bobrov <breton@cynicmansion.ru>2016-02-01 00:29:44 +0100
commit906a00b6679fc7940262dde48467b102894fa9fe (patch)
treecef555b4abcd61455767bcff2ba33b6b7d63bf30 /mediagoblin/user_pages
parentbe9262b4d4317f244ae4602dad0aaed5fe4ee62f (diff)
downloadmediagoblin-906a00b6679fc7940262dde48467b102894fa9fe.tar.lz
mediagoblin-906a00b6679fc7940262dde48467b102894fa9fe.tar.xz
mediagoblin-906a00b6679fc7940262dde48467b102894fa9fe.zip
added filtering by entry state in processing panel
Diffstat (limited to 'mediagoblin/user_pages')
-rw-r--r--mediagoblin/user_pages/routing.py5
-rw-r--r--mediagoblin/user_pages/views.py9
2 files changed, 13 insertions, 1 deletions
diff --git a/mediagoblin/user_pages/routing.py b/mediagoblin/user_pages/routing.py
index 1a1d4139..68cb0a3b 100644
--- a/mediagoblin/user_pages/routing.py
+++ b/mediagoblin/user_pages/routing.py
@@ -97,6 +97,11 @@ add_route('mediagoblin.user_pages.processing_panel',
'/u/<string:user>/panel/',
'mediagoblin.user_pages.views:processing_panel')
+add_route('mediagoblin.user_pages.processing_panel',
+ '/u/<string:user>/panel/<any(processed, processing, failed):state>/',
+ 'mediagoblin.user_pages.views:processing_panel')
+
+
# Stray edit routes
add_route('mediagoblin.edit.edit_media',
'/u/<string:user>/m/<int:media_id>/edit/',
diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py
index 0de63440..97f0bac1 100644
--- a/mediagoblin/user_pages/views.py
+++ b/mediagoblin/user_pages/views.py
@@ -653,11 +653,18 @@ def processing_panel(request):
return redirect(
request, 'mediagoblin.user_pages.user_home',
user=user.username)
-
# Get media entries which are in-processing
entries = (MediaEntry.query.filter_by(uploader=user.id)
.order_by(MediaEntry.created.desc()))
+ try:
+ state = request.matchdict['state']
+ # no exception was thrown, filter entries by state
+ entries = entries.filter_by(state=state)
+ except KeyError:
+ # show all entries
+ pass
+
# Render to response
return render_to_response(
request,