Commit
·
6ac883d
1
Parent(s):
7372212
flexible textarea, send button, prompts refresh, and add voice
Browse files
main.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
| 1 |
-
# main.py
|
| 2 |
import os
|
| 3 |
import logging
|
| 4 |
from fastapi import FastAPI, Request, Depends, HTTPException, status, Query
|
|
@@ -62,7 +61,7 @@ CONCURRENCY_LIMIT = int(os.getenv("CONCURRENCY_LIMIT", 20))
|
|
| 62 |
app = FastAPI(title="MGZon Chatbot API")
|
| 63 |
|
| 64 |
# إضافة SessionMiddleware
|
| 65 |
-
app.add_middleware(SessionMiddleware, secret_key=os.getenv("JWT_SECRET")
|
| 66 |
|
| 67 |
# إنشاء الجداول تلقائيًا
|
| 68 |
Base.metadata.create_all(bind=engine)
|
|
@@ -123,31 +122,31 @@ app.add_middleware(NotFoundMiddleware)
|
|
| 123 |
|
| 124 |
# Root endpoint
|
| 125 |
@app.get("/", response_class=HTMLResponse)
|
| 126 |
-
async def root(request: Request, user: User = Depends(
|
| 127 |
return templates.TemplateResponse("index.html", {"request": request, "user": user})
|
| 128 |
|
| 129 |
# Login page
|
| 130 |
@app.get("/login", response_class=HTMLResponse)
|
| 131 |
-
async def login_page(request: Request, user: User = Depends(
|
| 132 |
if user:
|
| 133 |
return RedirectResponse(url="/chat", status_code=302)
|
| 134 |
return templates.TemplateResponse("login.html", {"request": request})
|
| 135 |
|
| 136 |
# Register page
|
| 137 |
@app.get("/register", response_class=HTMLResponse)
|
| 138 |
-
async def register_page(request: Request, user: User = Depends(
|
| 139 |
if user:
|
| 140 |
return RedirectResponse(url="/chat", status_code=302)
|
| 141 |
return templates.TemplateResponse("register.html", {"request": request})
|
| 142 |
|
| 143 |
# Chat endpoint
|
| 144 |
@app.get("/chat", response_class=HTMLResponse)
|
| 145 |
-
async def chat(request: Request, user: User = Depends(
|
| 146 |
return templates.TemplateResponse("chat.html", {"request": request, "user": user})
|
| 147 |
|
| 148 |
# About endpoint
|
| 149 |
@app.get("/about", response_class=HTMLResponse)
|
| 150 |
-
async def about(request: Request, user: User = Depends(
|
| 151 |
return templates.TemplateResponse("about.html", {"request": request, "user": user})
|
| 152 |
|
| 153 |
# Blog endpoint (قائمة المقالات)
|
|
|
|
|
|
|
| 1 |
import os
|
| 2 |
import logging
|
| 3 |
from fastapi import FastAPI, Request, Depends, HTTPException, status, Query
|
|
|
|
| 61 |
app = FastAPI(title="MGZon Chatbot API")
|
| 62 |
|
| 63 |
# إضافة SessionMiddleware
|
| 64 |
+
app.add_middleware(SessionMiddleware, secret_key=os.getenv("JWT_SECRET"))
|
| 65 |
|
| 66 |
# إنشاء الجداول تلقائيًا
|
| 67 |
Base.metadata.create_all(bind=engine)
|
|
|
|
| 122 |
|
| 123 |
# Root endpoint
|
| 124 |
@app.get("/", response_class=HTMLResponse)
|
| 125 |
+
async def root(request: Request, user: User = Depends(fastapi_users.current_user(optional=True))):
|
| 126 |
return templates.TemplateResponse("index.html", {"request": request, "user": user})
|
| 127 |
|
| 128 |
# Login page
|
| 129 |
@app.get("/login", response_class=HTMLResponse)
|
| 130 |
+
async def login_page(request: Request, user: User = Depends(fastapi_users.current_user(optional=True))):
|
| 131 |
if user:
|
| 132 |
return RedirectResponse(url="/chat", status_code=302)
|
| 133 |
return templates.TemplateResponse("login.html", {"request": request})
|
| 134 |
|
| 135 |
# Register page
|
| 136 |
@app.get("/register", response_class=HTMLResponse)
|
| 137 |
+
async def register_page(request: Request, user: User = Depends(fastapi_users.current_user(optional=True))):
|
| 138 |
if user:
|
| 139 |
return RedirectResponse(url="/chat", status_code=302)
|
| 140 |
return templates.TemplateResponse("register.html", {"request": request})
|
| 141 |
|
| 142 |
# Chat endpoint
|
| 143 |
@app.get("/chat", response_class=HTMLResponse)
|
| 144 |
+
async def chat(request: Request, user: User = Depends(fastapi_users.current_user(optional=True))):
|
| 145 |
return templates.TemplateResponse("chat.html", {"request": request, "user": user})
|
| 146 |
|
| 147 |
# About endpoint
|
| 148 |
@app.get("/about", response_class=HTMLResponse)
|
| 149 |
+
async def about(request: Request, user: User = Depends(fastapi_users.current_user(optional=True))):
|
| 150 |
return templates.TemplateResponse("about.html", {"request": request, "user": user})
|
| 151 |
|
| 152 |
# Blog endpoint (قائمة المقالات)
|