Files
food/kitchen/urls_htmx.py
T
Caine d0de1b44ea Pantry move/expiry edit + smart shopping list with summary
- Move items between fridge↔freezer (freezer→fridge sets +7d or shelf life expiry, fridge→freezer clears expiry)
- Inline expiry date editor on fridge items (📅 button)
- Smart shopping list now shows recipe gaps (missing required slot ingredients)
- Summary card shows breakdown: X staple restocks, Y expiring, Z recipe gaps
2026-04-02 23:18:01 +01:00

24 lines
1.2 KiB
Python

from django.urls import path
from . import views_htmx
urlpatterns = [
# Full pages
path("", views_htmx.pantry_page, name="app-pantry"),
path("recipes/", views_htmx.recipes_page, name="app-recipes"),
path("shopping/", views_htmx.shopping_page, name="app-shopping"),
path("log/", views_htmx.log_page, name="app-log"),
# HTMX partials — pantry
path("pantry/add/", views_htmx.pantry_add, name="app-pantry-add"),
path("pantry/<int:item_id>/delete/", views_htmx.pantry_delete, name="app-pantry-delete"),
path("pantry/<int:item_id>/move/", views_htmx.pantry_move, name="app-pantry-move"),
path("pantry/<int:item_id>/edit-expiry/", views_htmx.pantry_edit_expiry, name="app-pantry-edit-expiry"),
path("pantry/<int:item_id>/save-expiry/", views_htmx.pantry_save_expiry, name="app-pantry-save-expiry"),
path("pantry/cancel-edit/", views_htmx.pantry_cancel_edit, name="app-pantry-cancel-edit"),
# HTMX partials — shopping
path("shopping/generate/", views_htmx.shopping_generate, name="app-shopping-generate"),
path("shopping/<int:item_id>/toggle/", views_htmx.shopping_toggle, name="app-shopping-toggle"),
path("shopping/clear/", views_htmx.shopping_clear, name="app-shopping-clear"),
]