Fix circular import in email helpers

Move blueprints.email.helpers import from module-level to inside the
endpoint functions that use it, breaking the circular dependency chain.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
ryan
2026-03-13 16:54:48 -04:00
parent 6a7b1369ad
commit 6917f331d8

View File

@@ -9,7 +9,6 @@ from .models import User
from .oidc_service import OIDCUserService from .oidc_service import OIDCUserService
from .decorators import admin_required from .decorators import admin_required
from config.oidc_config import oidc_config from config.oidc_config import oidc_config
from blueprints.email.helpers import generate_email_token, get_user_email_address
import os import os
import secrets import secrets
import httpx import httpx
@@ -224,6 +223,7 @@ async def me():
@user_blueprint.route("/admin/users", methods=["GET"]) @user_blueprint.route("/admin/users", methods=["GET"])
@admin_required @admin_required
async def list_users(): async def list_users():
from blueprints.email.helpers import get_user_email_address
users = await User.all().order_by("username") users = await User.all().order_by("username")
mailgun_domain = os.getenv("MAILGUN_DOMAIN", "") mailgun_domain = os.getenv("MAILGUN_DOMAIN", "")
return jsonify([ return jsonify([
@@ -283,6 +283,7 @@ async def unlink_whatsapp(user_id):
@admin_required @admin_required
async def toggle_email(user_id): async def toggle_email(user_id):
"""Enable email channel for a user, generating an HMAC token.""" """Enable email channel for a user, generating an HMAC token."""
from blueprints.email.helpers import generate_email_token, get_user_email_address
user = await User.get_or_none(id=user_id) user = await User.get_or_none(id=user_id)
if not user: if not user:
return jsonify({"error": "User not found"}), 404 return jsonify({"error": "User not found"}), 404