fixing weekly menu tab

This commit is contained in:
2025-09-29 07:32:49 -07:00
parent b86622f453
commit 0f801937b1
2 changed files with 35 additions and 2 deletions

17
main.py
View File

@@ -7,6 +7,7 @@ print("DEBUG: main.py started")
from fastapi import FastAPI, Depends, HTTPException, Request, Form, Body from fastapi import FastAPI, Depends, HTTPException, Request, Form, Body
from fastapi.templating import Jinja2Templates from fastapi.templating import Jinja2Templates
from fastapi.staticfiles import StaticFiles from fastapi.staticfiles import StaticFiles
from fastapi.middleware.cors import CORSMiddleware
from fastapi.responses import HTMLResponse from fastapi.responses import HTMLResponse
from sqlalchemy import create_engine, Column, Integer, String, Float, DateTime, ForeignKey, Text, Date, Boolean from sqlalchemy import create_engine, Column, Integer, String, Float, DateTime, ForeignKey, Text, Date, Boolean
from sqlalchemy import or_ from sqlalchemy import or_
@@ -58,6 +59,13 @@ Base = declarative_base()
app = FastAPI(title="Meal Planner") app = FastAPI(title="Meal Planner")
templates = Jinja2Templates(directory="templates") templates = Jinja2Templates(directory="templates")
# Add a logging middleware to see incoming requests
@app.middleware("http")
async def log_requests(request: Request, call_next):
logging.info(f"Incoming request: {request.method} {request.url.path}")
response = await call_next(request)
return response
# Get the port from environment variable or default to 8999 # Get the port from environment variable or default to 8999
PORT = int(os.getenv("PORT", 8999)) PORT = int(os.getenv("PORT", 8999))
@@ -1536,11 +1544,11 @@ async def delete_meals(meal_ids: dict = Body(...), db: Session = Depends(get_db)
#Weekly Menu tab #Weekly Menu tab
@app.get("/weekly-menu", response_class=HTMLResponse) @app.get("/weeklymenu", response_class=HTMLResponse)
async def weekly_menu_page(request: Request, db: Session = Depends(get_db)): async def weekly_menu_page(request: Request, db: Session = Depends(get_db)):
weekly_menus = db.query(WeeklyMenu).all() weekly_menus = db.query(WeeklyMenu).all()
templates = db.query(Template).all() templates = db.query(Template).all()
return templates.TemplateResponse("weekly_menu.html", { return templates.TemplateResponse("weeklymenu.html", {
"request": request, "request": request,
"weekly_menus": weekly_menus, "weekly_menus": weekly_menus,
"templates": templates "templates": templates
@@ -2095,6 +2103,11 @@ async def test_route():
logging.info("DEBUG: Test route called") logging.info("DEBUG: Test route called")
return {"status": "success", "message": "Test route is working"} return {"status": "success", "message": "Test route is working"}
@app.get("/templates", response_class=HTMLResponse)
async def templates_page(request: Request, db: Session = Depends(get_db)):
templates = db.query(Template).all()
return templates.TemplateResponse("templates.html", {"request": request, "templates": templates})
@app.post("/templates/upload") @app.post("/templates/upload")
async def bulk_upload_templates(file: UploadFile = File(...), db: Session = Depends(get_db)): async def bulk_upload_templates(file: UploadFile = File(...), db: Session = Depends(get_db)):
"""Handle bulk template upload from CSV""" """Handle bulk template upload from CSV"""

20
templates/templates.html Normal file
View File

@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Templates</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="container mt-4">
<h1>Templates</h1>
<p>This is the templates page.</p>
<ul>
{% for template in templates %}
<li>{{ template.name }}</li>
{% endfor %}
</ul>
</div>
</body>
</html>