diff options
Diffstat (limited to 'mediagoblin/user_pages')
-rw-r--r-- | mediagoblin/user_pages/lib.py | 33 | ||||
-rw-r--r-- | mediagoblin/user_pages/views.py | 27 |
2 files changed, 30 insertions, 30 deletions
diff --git a/mediagoblin/user_pages/lib.py b/mediagoblin/user_pages/lib.py index fc1b6a7e..b6741001 100644 --- a/mediagoblin/user_pages/lib.py +++ b/mediagoblin/user_pages/lib.py @@ -16,8 +16,8 @@ from mediagoblin import mg_globals from mediagoblin.db.base import Session -from mediagoblin.db.models import (CollectionItem, MediaReport, CommentReport, - MediaComment, MediaEntry) +from mediagoblin.db.models import CollectionItem, Report, TextComment, \ + MediaEntry from mediagoblin.tools.mail import send_email from mediagoblin.tools.pluginapi import hook_runall from mediagoblin.tools.template import render_template @@ -82,34 +82,27 @@ def add_media_to_collection(collection, media, note=None, commit=True): def build_report_object(report_form, media_entry=None, comment=None): """ This function is used to convert a form object (from a User filing a - report) into either a MediaReport or CommentReport object. + report) into a Report. :param report_form A MediaReportForm or a CommentReportForm object with valid information from a POST request. :param media_entry A MediaEntry object. The MediaEntry being repo- - -rted by a MediaReport. In a CommentReport, - this will be None. - :param comment A MediaComment object. The MediaComment being - reported by a CommentReport. In a MediaReport - this will be None. - - :returns A MediaReport object if a valid MediaReportForm is - passed as kwarg media_entry. This MediaReport has + -rted by a Report. + :param comment A Comment object. The Comment being + reported by a Report. + + :returns A Report object if a valid MediaReportForm is + passed as kwarg media_entry. This Report has not been saved. - :returns A CommentReport object if a valid CommentReportForm - is passed as kwarg comment. This CommentReport - has not been saved. :returns None if the form_dict is invalid. """ - + report_object = Report() if report_form.validate() and comment is not None: - report_object = CommentReport() - report_object.comment_id = comment.id - report_object.reported_user_id = MediaComment.query.get( + report_object.obj = comment.comment() + report_object.reported_user_id = TextComment.query.get( comment.id).get_actor.id elif report_form.validate() and media_entry is not None: - report_object = MediaReport() - report_object.media_entry_id = media_entry.id + report_object.obj = media_entry report_object.reported_user_id = MediaEntry.query.get( media_entry.id).get_actor.id else: diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py index f1c8a622..ba94ec16 100644 --- a/mediagoblin/user_pages/views.py +++ b/mediagoblin/user_pages/views.py @@ -21,8 +21,9 @@ import json import six from mediagoblin import messages, mg_globals -from mediagoblin.db.models import (MediaEntry, MediaTag, Collection, - CollectionItem, LocalUser, Activity) +from mediagoblin.db.models import (MediaEntry, MediaTag, Collection, Comment, + CollectionItem, LocalUser, Activity, \ + GenericModelReference) from mediagoblin.tools.response import render_to_response, render_404, \ redirect, redirect_obj from mediagoblin.tools.text import cleaned_markdown_conversion @@ -178,8 +179,7 @@ def media_post_comment(request, media): if not request.method == 'POST': raise MethodNotAllowed() - comment = request.db.MediaComment() - comment.media_entry = media.id + comment = request.db.TextComment() comment.actor = request.user.id comment.content = six.text_type(request.form['comment_content']) @@ -199,6 +199,11 @@ def media_post_comment(request, media): add_comment_subscription(request.user, media) comment.save() + link = request.db.Comment() + link.target = media + link.comment = comment + link.save() + messages.add_message( request, messages.SUCCESS, _('Your comment has been posted!')) @@ -682,15 +687,15 @@ def processing_panel(request): @get_optional_media_comment_by_id def file_a_report(request, media, comment): """ - This view handles the filing of a MediaReport or a CommentReport. + This view handles the filing of a Report. """ if comment is not None: - if not comment.get_media_entry.id == media.id: + if not comment.target().id == media.id: return render_404(request) form = user_forms.CommentReportForm(request.form) - context = {'media': media, - 'comment':comment, + context = {'media': comment.target(), + 'comment':comment.comment(), 'form':form} else: form = user_forms.MediaReportForm(request.form) @@ -700,9 +705,11 @@ def file_a_report(request, media, comment): if request.method == "POST": - report_object = build_report_object(form, + report_object = build_report_object( + form, media_entry=media, - comment=comment) + comment=comment + ) # if the object was built successfully, report_table will not be None if report_object: |