Replace 21 Jinja render_template() calls with sx render functions

Phase 1: Wire 16 events routes to existing sx render functions
- slot, slots, ticket_types, ticket_type, calendar_entries,
  calendar_entry, calendar_entry/admin

Phase 2: Orders checkout return (2 calls)
- New orders/sx/checkout.sx with return page components
- New render_checkout_return_page() in orders/sx/sx_components.py

Phase 3: Blog menu items (3 calls)
- New blog/sx/menu_items.sx with search result components
- New render_menu_item_form() and render_page_search_results()
  in blog/sx/sx_components.py

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-03 08:52:32 +00:00
parent 5dd1161816
commit 3bd4f4b661
13 changed files with 395 additions and 120 deletions

View File

@@ -1,6 +1,6 @@
from __future__ import annotations
from quart import Blueprint, render_template, make_response, request, jsonify, g
from quart import Blueprint, make_response, request, jsonify, g
from shared.browser.app.authz import require_admin
from .services.menu_items import (
@@ -46,11 +46,8 @@ def register():
@require_admin
async def new_menu_item():
"""Show form to create new menu item"""
html = await render_template(
"_types/menu_items/_form.html",
menu_item=None,
)
return await make_response(html)
from sx.sx_components import render_menu_item_form
return sx_response(render_menu_item_form())
@bp.post("/")
@require_admin
@@ -89,11 +86,8 @@ def register():
if not menu_item:
return await make_response("Menu item not found", 404)
html = await render_template(
"_types/menu_items/_form.html",
menu_item=menu_item,
)
return await make_response(html)
from sx.sx_components import render_menu_item_form
return sx_response(render_menu_item_form(menu_item=menu_item))
@bp.put("/<int:item_id>/")
@require_admin
@@ -153,14 +147,8 @@ def register():
pages, total = await search_pages(g.s, query, page, per_page)
has_more = (page * per_page) < total
html = await render_template(
"_types/menu_items/_page_search_results.html",
pages=pages,
query=query,
page=page,
has_more=has_more,
)
return await make_response(html)
from sx.sx_components import render_page_search_results
return sx_response(render_page_search_results(pages, query, page, has_more))
@bp.post("/reorder/")
@require_admin