diff options
Diffstat (limited to 'mediagoblin/user_pages')
-rw-r--r-- | mediagoblin/user_pages/routing.py | 5 | ||||
-rw-r--r-- | mediagoblin/user_pages/views.py | 9 |
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, |