Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Background
The suggestion form introduced in #49 has already been used several times and has worked well so far. Up to this point, it has only been used by people with good intentions. However, since this is the internet, I expect that this will change at some point.
To reduce the risk of abuse, several security measures were already implemented (rate limiting, IP bans, profanity filtering). However, nothing currently prevents a malicious user from submitting nonsensical content that would immediately appear as a GitHub issue.
Approval System
To solve this, this PR introduces an approval system integrated into the admin page (implemented in #108). It works as follows:
submissionstable. This is a new table in thecatdat-visitsdatabase (which should be renamed at some point), separate from the main database containing categorical data./admin/submissions. This is a new page where suggestion form submissions are listed and can be reviewed.How It Looks
This is how a submission looks like before approval on the admin page.
After approval, it looks like this:
This then creates the GitHub issue #110.
Thoughts