Ejemplo n.º 1
0
 def get(self):
     admins = AdminModel.query_for_admin()
     if admins:
         admin = admins[0]
         user_id = admin.id
         user = UserModel.find_by_id(user_id)
         if user:
             return admin.get_admin(user), 200
     abort(404, message="no super admin exist.")
Ejemplo n.º 2
0
 def customized_jwt_response(access_token, identity):
     admins = AdminModel.query_for_admin()
     if (len(admins) > 0):
         if admins[0].user_id == identity.id:
             return jsonify({
                 'access_token': access_token.decode('utf-8'),
                 'user_id': identity.id,
                 'isAdmin': True,
                 'admin_id': admins[0].id
             })
         else:
             return jsonify({
                 'access_token': access_token.decode('utf-8'),
                 'user_id': identity.id,
                 'isAdmin': False,
                 'admin_id': None
             })
Ejemplo n.º 3
0
    def post(self):
        existing_admin = AdminModel.query_for_admin()
        if existing_admin:
            abort(404, message="Super Admin already exist.")
        data = AdminController.parser.parse_args()
        user = UserModel(**data)
        user = user.hash_password()
        admin = AdminModel()
        user.admin_id = admin
        # Save to database
        try:
            db.session.add(user)
            db.session.add(admin)
            db.session.commit()
        except (ArgumentError, DataError):
            abort(500,
                  message="Server internal error due to invalid argument.")

        return {"message": "Successfully created super admin."}, 201