aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/user_pages/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/user_pages/views.py')
-rw-r--r--mediagoblin/user_pages/views.py36
1 files changed, 22 insertions, 14 deletions
diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py
index e6ba6b79..2090d6fd 100644
--- a/mediagoblin/user_pages/views.py
+++ b/mediagoblin/user_pages/views.py
@@ -18,10 +18,11 @@ from webob import exc
from mediagoblin import messages, mg_globals
from mediagoblin.db.util import DESCENDING, ObjectId
-from mediagoblin.util import (
- Pagination, render_to_response, redirect, cleaned_markdown_conversion,
- render_404, delete_media_files)
-from mediagoblin.util import pass_to_ugettext as _
+from mediagoblin.tools.text import cleaned_markdown_conversion
+from mediagoblin.tools.response import render_to_response, render_404, redirect
+from mediagoblin.tools.translate import pass_to_ugettext as _
+from mediagoblin.tools.pagination import Pagination
+from mediagoblin.tools.files import delete_media_files
from mediagoblin.user_pages import forms as user_forms
from mediagoblin.decorators import (uses_pagination, get_user_media_entry,
@@ -125,27 +126,34 @@ def media_home(request, media, page, **kwargs):
'app_config': mg_globals.app_config})
+@get_user_media_entry
@require_active_login
-def media_post_comment(request):
+def media_post_comment(request, media):
"""
recieves POST from a MediaEntry() comment form, saves the comment.
"""
+ assert request.method == 'POST'
+
comment = request.db.MediaComment()
- comment['media_entry'] = ObjectId(request.matchdict['media'])
+ comment['media_entry'] = media['_id']
comment['author'] = request.user['_id']
comment['content'] = unicode(request.POST['comment_content'])
-
comment['content_html'] = cleaned_markdown_conversion(comment['content'])
- comment.save()
+ if not comment['content'].strip():
+ messages.add_message(
+ request,
+ messages.ERROR,
+ _("Empty comments are not allowed."))
+ else:
+ comment.save()
- messages.add_message(
- request, messages.SUCCESS,
- 'Comment posted!')
+ messages.add_message(
+ request, messages.SUCCESS,
+ _('Comment posted!'))
- return redirect(request, 'mediagoblin.user_pages.media_home',
- media=request.matchdict['media'],
- user=request.matchdict['user'])
+ return exc.HTTPFound(
+ location=media.url_for_self(request.urlgen))
@get_user_media_entry