feat: add /status order lookup page linked from request form

This commit is contained in:
Troll (Hermes Agent) 2026-08-02 22:00:27 +00:00
parent 5e26650b90
commit 2ac99fde8b
6 changed files with 226 additions and 2 deletions

22
app.py
View file

@ -54,7 +54,7 @@ from werkzeug.utils import secure_filename
# Project imports
from config import Config
from models import init_db, close_db, create_request, get_request_by_id, get_request_by_token, list_requests, update_request, now_utc, delete_request, reset_all_requests, get_db
from models import SCHEMA
from models import SCHEMA, get_requests_by_email
# Audio metadata import
from mutagen.mp3 import MP3
@ -392,6 +392,26 @@ def thanks(rid):
return render_template('thanks.html', req=req)
@app.route('/status', methods=['GET', 'POST'])
def status_lookup():
"""
Public order status lookup page.
Customers enter their email to see all their requests and their current
statuses, plus the private player link once songs have been uploaded.
"""
requests_list = []
email = ''
searched = False
if request.method == 'POST':
email = request.form.get('email', '').strip().lower()
if not is_valid_email(email):
flash('Please enter a valid email address.', 'error')
else:
requests_list = get_requests_by_email(email)
searched = True
return render_template('status.html', email=email, requests=requests_list, searched=searched, statuses=STATUS_LABELS)
@app.route('/faq')
def faq():
"""Customer-facing frequently asked questions page."""