aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/submit/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/submit/views.py')
-rw-r--r--mediagoblin/submit/views.py20
1 files changed, 15 insertions, 5 deletions
diff --git a/mediagoblin/submit/views.py b/mediagoblin/submit/views.py
index 4e4c7c43..dd273c7f 100644
--- a/mediagoblin/submit/views.py
+++ b/mediagoblin/submit/views.py
@@ -31,7 +31,8 @@ from mediagoblin.decorators import require_active_login
from mediagoblin.submit import forms as submit_forms, security
from mediagoblin.processing import mark_entry_failed, ProcessMedia
from mediagoblin.messages import add_message, SUCCESS
-from mediagoblin.media_types import get_media_type_and_manager, InvalidFileType
+from mediagoblin.media_types import get_media_type_and_manager, \
+ InvalidFileType, FileTypeNotSupported
@require_active_login
@@ -88,7 +89,7 @@ def submit_start(request):
queue_file.write(request.POST['file'].file.read())
# Add queued filename to the entry
- entry['queued_media_file'] = queue_filepath
+ entry.queued_media_file = queue_filepath
# We generate this ourselves so we know what the taks id is for
# retrieval later.
@@ -128,9 +129,18 @@ def submit_start(request):
return redirect(request, "mediagoblin.user_pages.user_home",
user=request.user.username)
- except InvalidFileType, exc:
- submit_form.file.errors.append(
- _(u'Invalid file type.'))
+ except Exception as e:
+ '''
+ This section is intended to catch exceptions raised in
+ mediagobling.media_types
+ '''
+
+ if isinstance(e, InvalidFileType) or \
+ isinstance(e, FileTypeNotSupported):
+ submit_form.file.errors.append(
+ e)
+ else:
+ raise
return render_to_response(
request,