aboutsummaryrefslogtreecommitdiff
path: root/src/web/views/api/article.py
diff options
context:
space:
mode:
authorCédric Bonhomme <cedric@cedricbonhomme.org>2016-04-14 00:02:47 +0200
committerCédric Bonhomme <cedric@cedricbonhomme.org>2016-04-14 00:02:47 +0200
commitb4b175e0a8bb3844c1c6f846c1b4eb1970520864 (patch)
tree1cc59a636e2c4dffdb86bc2daaeee6f14a28eefa /src/web/views/api/article.py
parentupdated some JS dependencies. (diff)
downloadnewspipe-b4b175e0a8bb3844c1c6f846c1b4eb1970520864.tar.gz
newspipe-b4b175e0a8bb3844c1c6f846c1b4eb1970520864.tar.bz2
newspipe-b4b175e0a8bb3844c1c6f846c1b4eb1970520864.zip
testing a new API
Diffstat (limited to 'src/web/views/api/article.py')
-rw-r--r--src/web/views/api/article.py53
1 files changed, 0 insertions, 53 deletions
diff --git a/src/web/views/api/article.py b/src/web/views/api/article.py
deleted file mode 100644
index 5971f47d..00000000
--- a/src/web/views/api/article.py
+++ /dev/null
@@ -1,53 +0,0 @@
-from conf import API_ROOT
-import dateutil.parser
-from datetime import datetime
-from flask import current_app
-from flask.ext.restful import Api
-
-from web.views.common import api_permission
-from web.controllers import ArticleController
-from web.views.api.common import (PyAggAbstractResource,
- PyAggResourceNew, PyAggResourceExisting, PyAggResourceMulti)
-
-
-class ArticleNewAPI(PyAggResourceNew):
- controller_cls = ArticleController
-
-
-class ArticleAPI(PyAggResourceExisting):
- controller_cls = ArticleController
-
-
-class ArticlesAPI(PyAggResourceMulti):
- controller_cls = ArticleController
-
-
-class ArticlesChallenge(PyAggAbstractResource):
- controller_cls = ArticleController
- attrs = {'ids': {'type': list, 'default': []}}
-
- @api_permission.require(http_exception=403)
- def get(self):
- parsed_args = self.reqparse_args(right='read')
- # collecting all attrs for casting purpose
- attrs = self.controller_cls._get_attrs_desc('admin')
- for id_dict in parsed_args['ids']:
- keys_to_ignore = []
- for key in id_dict:
- if key not in attrs:
- keys_to_ignore.append(key)
- if issubclass(attrs[key]['type'], datetime):
- id_dict[key] = dateutil.parser.parse(id_dict[key])
- for key in keys_to_ignore:
- del id_dict[key]
-
- result = list(self.controller.challenge(parsed_args['ids']))
- return result or None, 200 if result else 204
-
-api = Api(current_app, prefix=API_ROOT)
-
-api.add_resource(ArticleNewAPI, '/article', endpoint='article_new.json')
-api.add_resource(ArticleAPI, '/article/<int:obj_id>', endpoint='article.json')
-api.add_resource(ArticlesAPI, '/articles', endpoint='articles.json')
-api.add_resource(ArticlesChallenge, '/articles/challenge',
- endpoint='articles_challenge.json')
bgstack15