diff --git a/app/routers/auth.py b/app/routers/auth.py index 8983141..2ca238a 100644 --- a/app/routers/auth.py +++ b/app/routers/auth.py @@ -89,31 +89,28 @@ async function handleLogin(e){e.preventDefault();const email=document.getElement async def login(request: Request, provider: str = Query("gitea")): """Redirect to OAuth2 authorize page or show local login page.""" # Local login page (POST handled by /auth/local-login) + from fastapi.responses import HTMLResponse if provider == "local": - from fastapi.responses import HTMLResponse return HTMLResponse(LOCAL_LOGIN_HTML, status_code=200) # OAuth flow — check if provider is configured from app.auth.providers import get_provider oauth_provider = get_provider(provider) if not oauth_provider: - # Fallback: no OAuth configured, create admin session - from app.db import get_conn - with get_conn() as conn: - user = conn.execute("SELECT * FROM users WHERE login='admin'").fetchone() - if not user: - conn.execute( - "INSERT INTO users (login, full_name, email, avatar_url, is_active) " - "VALUES ('admin', 'Admin', 'admin@localhost', '', 1)" - ) - conn.commit() - user = conn.execute("SELECT * FROM users WHERE login='admin'").fetchone() - user_data = dict(user) - session = SessionManager.create_session(user_data) - _log_login(user_data["id"], request) - response = RedirectResponse(url="/workspaces", status_code=302) - response.set_cookie("flowdeck_session", session, httponly=True, max_age=86400 * 7, samesite="lax", path="/") - return response + # OAuth provider not configured — show error instead of auto-creating admin + return HTMLResponse( + f"""
The {provider} integration has not been set up by the server administrator.
+ +