diff --git a/board/forms.py b/board/forms.py index 412bb8a..fb24697 100644 --- a/board/forms.py +++ b/board/forms.py @@ -101,6 +101,8 @@ class ReportForm(ModelForm): record = ReportRecord.objects.get(post=self.op) except ReportRecord.DoesNotExist: record = ReportRecord.objects.create(post=self.op) + if record.report_set.filter(ip=self.instance.ip): + raise ValidationError(_("You have already reported this post.")) self.instance.record = record return super(ReportForm, self).clean() diff --git a/board/models.py b/board/models.py index 710156f..e1ea7f5 100644 --- a/board/models.py +++ b/board/models.py @@ -281,6 +281,11 @@ class Report(models.Model): they are abusing the system. """ + class Meta: + unique_together = [ + ["record", "ip"], + ] + # The report that was made by this user record = models.ForeignKey("ReportRecord", on_delete=models.CASCADE) # Reason for this report diff --git a/board/static/board/post.js b/board/static/board/post.js index 59922bd..7da902c 100644 --- a/board/static/board/post.js +++ b/board/static/board/post.js @@ -200,7 +200,6 @@ function openReportWindow(reportUrl) { }); $(reportWindow.iframe, "iframe").on("load", () => { fitWindowToContent(reportWindow); - reportWindow.setResizable(false); }); reportWindow.show(); }