diff options
Diffstat (limited to 'pydis_site/apps')
| -rw-r--r-- | pydis_site/apps/api/views.py | 33 | 
1 files changed, 24 insertions, 9 deletions
| diff --git a/pydis_site/apps/api/views.py b/pydis_site/apps/api/views.py index ad2d948e..f76a78ff 100644 --- a/pydis_site/apps/api/views.py +++ b/pydis_site/apps/api/views.py @@ -100,6 +100,12 @@ class RulesView(APIView):      # `format` here is the result format, we have a link format here instead.      def get(self, request, format=None):  # noqa: D102,ANN001,ANN201 +        """ +        Returns a list of our community rules coupled with their keywords. + +        Each item in the returned list is a tuple with the rule as first item +        and a list of keywords that match that rules as second item. +        """          link_format = request.query_params.get('link_format', 'md')          if link_format not in ('html', 'md'):              raise ParseError( @@ -124,35 +130,44 @@ class RulesView(APIView):          return Response([              ( -                f"Follow the {pydis_coc}." +                f"Follow the {pydis_coc}.", +                ["coc", "conduct", "code"]              ),              ( -                f"Follow the {discord_community_guidelines} and {discord_tos}." +                f"Follow the {discord_community_guidelines} and {discord_tos}.", +                ["discord", "guidelines", "discord_tos"]              ),              ( -                "Respect staff members and listen to their instructions." +                "Respect staff members and listen to their instructions.", +                ["respect", "staff", "instructions"]              ),              (                  "Use English to the best of your ability. " -                "Be polite if someone speaks English imperfectly." +                "Be polite if someone speaks English imperfectly.", +                ["english", "language"]              ),              (                  "Do not provide or request help on projects that may break laws, " -                "breach terms of services, or are malicious or inappropriate." +                "breach terms of services, or are malicious or inappropriate.", +                ["infraction", "tos", "breach", "malicious", "inappropriate"]              ),              ( -                "Do not post unapproved advertising." +                "Do not post unapproved advertising.", +                ["ad", "ads", "advert", "advertising"]              ),              (                  "Keep discussions relevant to the channel topic. " -                "Each channel's description tells you the topic." +                "Each channel's description tells you the topic.", +                ["off-topic", "topic", "relevance"]              ),              (                  "Do not help with ongoing exams. When helping with homework, " -                "help people learn how to do the assignment without doing it for them." +                "help people learn how to do the assignment without doing it for them.", +                ["exam", "exams", "assignment", "assignments", "homework"]              ),              ( -                "Do not offer or ask for paid work of any kind." +                "Do not offer or ask for paid work of any kind.", +                ["paid", "work", "money"]              ),          ]) | 
