diff --git a/logs.txt b/logs.txt new file mode 100644 index 0000000..e69de29 diff --git a/moderation/backend-py/routes/moderation_auth.py b/moderation/backend-py/routes/moderation_auth.py index feff51d..17bed50 100644 --- a/moderation/backend-py/routes/moderation_auth.py +++ b/moderation/backend-py/routes/moderation_auth.py @@ -4,10 +4,8 @@ Moderation authentication routes import secrets from datetime import datetime, timedelta from typing import Optional -from fastapi import APIRouter, HTTPException, status, Response, Cookie, Depends +from fastapi import APIRouter, HTTPException, status, Response, Cookie, Depends, Request from fastapi.responses import JSONResponse -from slowapi import Limiter -from slowapi.util import get_remote_address from bson import ObjectId from models import ( @@ -27,12 +25,6 @@ from utils.email_service import send_verification_code from config import settings router = APIRouter() -limiter = Limiter(key_func=get_remote_address) - - -# Rate limiters -AUTH_LIMITER = "5/15minutes" # 5 requests per 15 minutes -CODE_LIMITER = "1/minute" # 1 request per minute def set_auth_cookies(response: Response, access_token: str, refresh_token: str): @@ -65,8 +57,7 @@ def clear_auth_cookies(response: Response): @router.post("/send-code") -@limiter.limit(CODE_LIMITER) -async def send_code(request: SendCodeRequest): +async def send_code(request: SendCodeRequest, http_request: Request = None): """Send verification code to email""" try: email_lower = request.email.lower().strip() @@ -152,7 +143,6 @@ async def send_code(request: SendCodeRequest): @router.post("/register") -@limiter.limit(AUTH_LIMITER) async def register(request: RegisterRequest, response: Response): """Register with email verification code""" try: @@ -256,7 +246,6 @@ async def register(request: RegisterRequest, response: Response): @router.post("/login") -@limiter.limit(AUTH_LIMITER) async def login(request: LoginRequest, response: Response): """Login with email and password""" try: @@ -324,7 +313,6 @@ async def login(request: LoginRequest, response: Response): @router.post("/telegram-widget") -@limiter.limit(AUTH_LIMITER) async def telegram_widget_auth(request: TelegramWidgetAuth, response: Response): """Authenticate via Telegram Login Widget""" try: @@ -437,3 +425,9 @@ async def get_current_user_info(user: dict = Depends(get_current_user)): } } + +@router.post("/telegram") +async def telegram_auth_alias(request: TelegramWidgetAuth, response: Response): + """Alias for /telegram-widget for compatibility with frontend""" + return await telegram_widget_auth(request, response) +