diff --git a/server.py b/server.py index 385dc30..5f1b9ff 100644 --- a/server.py +++ b/server.py @@ -105,6 +105,11 @@ def init_schema(db): ); """) db.commit() + # Migration: add status column if missing + try: + db.execute("ALTER TABLE submissions ADD COLUMN status TEXT NOT NULL DEFAULT 'received'") + except Exception: + pass def get_setting(db, key, default=""): row = db.execute("SELECT value FROM settings WHERE key = ?", (key,)).fetchone() @@ -337,8 +342,8 @@ def check_status(email: str = "", phone: str = ""): rows = db.execute(""" SELECT s.id, s.status, s.created_at FROM submissions s - JOIN submission_data d1 ON d1.submission_id = s.id AND d1.field_label = 'Email' AND d1.field_value = ? - JOIN submission_data d2 ON d2.submission_id = s.id AND d2.field_label = 'Phone' AND d2.field_value = ? + JOIN submission_data d1 ON d1.submission_id = s.id AND LOWER(d1.field_label) = 'email' AND d1.field_value = ? + JOIN submission_data d2 ON d2.submission_id = s.id AND LOWER(d2.field_label) = 'phone' AND d2.field_value = ? ORDER BY s.id DESC LIMIT 1 """, (email.strip(), phone.strip())).fetchall() db.close() @@ -358,8 +363,8 @@ def delete_submission(email: str = "", phone: str = ""): rows = db.execute(""" SELECT s.id FROM submissions s - JOIN submission_data d1 ON d1.submission_id = s.id AND d1.field_label = 'Email' AND d1.field_value = ? - JOIN submission_data d2 ON d2.submission_id = s.id AND d2.field_label = 'Phone' AND d2.field_value = ? + JOIN submission_data d1 ON d1.submission_id = s.id AND LOWER(d1.field_label) = 'email' AND d1.field_value = ? + JOIN submission_data d2 ON d2.submission_id = s.id AND LOWER(d2.field_label) = 'phone' AND d2.field_value = ? ORDER BY s.id DESC LIMIT 1 """, (email.strip(), phone.strip())).fetchall() if not rows: