from functools import wraps from flask import jsonify from app.auth.quart_jwt import get_jwt_identity from app.models.user import User def admin_required(f): @wraps(f) def decorated_function(*args, **kwargs): user_id = get_jwt_identity() user_data = User.find_by_id(user_id) if not user_data or user_data.get('role') != 'admin': return jsonify({"message": "Admin privileges required"}), 403 return f(*args, **kwargs) return decorated_function