- if 'comment_id' in form_dict.keys():
- report_form = user_forms.CommentReportForm(form_dict)
- elif 'media_entry_id' in form_dict.keys():
- report_form = user_forms.MediaReportForm(form_dict)
- else:
- return None
-
- if report_form.validate() and 'comment_id' in form_dict.keys():
- report_model = CommentReport()
- report_model.comment_id = report_form.comment_id.data
- report_model.reported_user_id = MediaComment.query.get(
- report_model.comment_id).get_author.id
- elif report_form.validate() and 'media_entry_id' in form_dict.keys():
- report_model = MediaReport()
- report_model.media_entry_id = report_form.media_entry_id.data
- report_model.reported_user_id = MediaEntry.query.get(
- report_model.media_entry_id).get_uploader.id
+ This function is used to convert a form object (from a User filing a
+ 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 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 None if the form_dict is invalid.
+ """
+ report_object = Report()
+ if report_form.validate() and comment is not None:
+ 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.obj = media_entry
+ report_object.reported_user_id = MediaEntry.query.get(
+ media_entry.id).get_actor.id