aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/edit/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/edit/views.py')
-rw-r--r--mediagoblin/edit/views.py15
1 files changed, 5 insertions, 10 deletions
diff --git a/mediagoblin/edit/views.py b/mediagoblin/edit/views.py
index a0afaa30..b8e28e29 100644
--- a/mediagoblin/edit/views.py
+++ b/mediagoblin/edit/views.py
@@ -3,18 +3,10 @@
from webob import Response, exc
from mediagoblin.edit import forms
+from mediagoblin.edit.lib import may_edit_media
from mediagoblin.decorators import require_active_login, get_user_media_entry
-def may_edit_media(request, media):
- """Check, if the request's user may edit the media details"""
- if media['uploader'] == request.user['_id']:
- return True
- if request.user['is_admin']:
- return True
- return False
-
-
@get_user_media_entry
@require_active_login
def edit_media(request, media):
@@ -30,7 +22,10 @@ def edit_media(request, media):
media['title'] = request.POST['title']
media['description'] = request.POST['description']
media['slug'] = request.POST['slug']
- media.save()
+ try:
+ media.save()
+ except Exception as e:
+ return exc.HTTPConflict(detail = str(e))
# redirect
return exc.HTTPFound(