diff options
Diffstat (limited to 'pysite/views/api')
| -rw-r--r-- | pysite/views/api/bot/tag.py | 54 | 
1 files changed, 27 insertions, 27 deletions
| diff --git a/pysite/views/api/bot/tag.py b/pysite/views/api/bot/tag.py index 84fd8977..ef17e8fa 100644 --- a/pysite/views/api/bot/tag.py +++ b/pysite/views/api/bot/tag.py @@ -4,6 +4,7 @@ from flask import jsonify, request  from pysite.base_route import APIView, DBViewMixin  from pysite.constants import ErrorCodes +from pysite.decorators import valid_api_key  class TagView(APIView, DBViewMixin): @@ -12,45 +13,44 @@ class TagView(APIView, DBViewMixin):      table_name = "tag"      table_primary_key = "tag_name" +    @valid_api_key      def get(self):          """          Data must be provided as params,          API key must be provided as header          """ -        api_key = request.headers.get("X-API-Key") +          tag_name = request.args.get("tag_name") -        if self.validate_key(api_key): -            if tag_name: -                data = self.db.get(self.table_name, tag_name) -            else: -                data = self.db.pluck(self.table_name, "tag_name") +        if tag_name: +            data = self.db.get(self.table_name, tag_name)          else: -            return self.error(ErrorCodes.invalid_api_key) +            data = self.db.pluck(self.table_name, "tag_name")          return jsonify(data or {}) +    @valid_api_key      def post(self): -        """ Data must be provided as JSON. """ -        indata = request.get_json() -        tag_name = indata.get("tag_name") -        tag_content = indata.get("tag_content") -        tag_category = indata.get("tag_category") -        api_key = request.headers.get("X-API-Key") - -        if self.validate_key(api_key): -            if tag_name and tag_content: -                self.db.insert( -                    self.table_name, -                    { -                        "tag_name": tag_name, -                        "tag_content": tag_content, -                        "tag_category": tag_category -                    } -                ) -            else: -                return self.error(ErrorCodes.missing_parameters) +        """ +        Data must be provided as JSON. +        """ + +        data = request.get_json() + +        tag_name = data.get("tag_name") +        tag_content = data.get("tag_content") +        tag_category = data.get("tag_category") + +        if tag_name and tag_content: +            self.db.insert( +                self.table_name, +                { +                    "tag_name": tag_name, +                    "tag_content": tag_content, +                    "tag_category": tag_category +                } +            )          else: -            return self.error(ErrorCodes.invalid_api_key) +            return self.error(ErrorCodes.missing_parameters)          return jsonify({"success": True}) | 
