""" import logging from flask_restplus import Resource from app.rest import flask_api import app.view.serializers as serializers import app.queries_handler as qh from flask import request import flask_restplus import flask_jwt_extended from app.storage.user_roles import UserRolesEnum import app.view.utils as utils log = logging.getLogger(__name__) ns = flask_api.namespace('timezone', validate=True, description=__doc__) @ns.doc(security='apikey') @ns.route('') @ns.response(404, 'timezone not found') @ns.response(200, 'timezone retuned successfully') class Timezones(Resource): @ns.doc('list_timezones') @flask_jwt_extended.jwt_required @ns.marshal_with(serializers.TimezoneListNoId, skip_none=True) def get(self): """Get all timezones""" utils.check_user_enabled() data = qh.get_timezone_all() if not data["data"]:
User API - for user management """ import logging from flask_restplus import Resource from app.rest import flask_api import app.view.serializers as serializers import app.queries_handler as qh from flask import request import flask_jwt_extended from app.storage.user_roles import UserRolesEnum import app.view.utils as utils log = logging.getLogger(__name__) ns = flask_api.namespace('user', validate=True, description=__doc__) @ns.route('') class ListUsers(Resource): @ns.doc(security='apikey') @ns.doc('list_all_users') @flask_jwt_extended.jwt_required @ns.marshal_with(serializers.UserData, skip_none=True) @ns.response(200, 'User details retuned successfully') @ns.response(404, 'No Users found') @ns.response(400, 'Bad request') def get(self): """Get all users""" utils.check_user_enabled() username, perm = utils.get_user_permissions()
""" Book Request API """ import logging from flask_restplus import Resource from app.rest import flask_api import app.serializers as serializers import app.queries_handler as qh log = logging.getLogger(__name__) ns = flask_api.namespace('request', validate=True, description=__doc__) book_req_params = ns.parser() book_req_params.add_argument('email', type=str, help='user_email', location='values', dest='email', required=True) book_req_params.add_argument('title', type=str, help='book title', location='values', dest='title', required=True) @ns.route('') class Request(Resource): @ns.doc('request_book') @ns.expect(book_req_params, validate=True) @ns.marshal_with(serializers.book_request, skip_none=True) @ns.response(200, 'Request successful') @ns.response(404, 'Book title not found') @ns.response(400, 'Request error') def post(self): """ create a book request """ args = book_req_params.parse_args()