- Fork elmeg-demo codebase for multi-band support - Add data importer infrastructure with base class - Create band-specific importers: - phish.py: Phish.net API v5 - grateful_dead.py: Grateful Stats API - setlistfm.py: Dead & Company, Billy Strings (Setlist.fm) - Add spec-kit configuration for Gemini - Update README with supported bands and architecture
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
"""
|
|
Migration to add email verification and password reset columns to user table.
|
|
"""
|
|
import sys
|
|
import os
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
|
|
from sqlmodel import Session, create_engine, text
|
|
from database import DATABASE_URL
|
|
|
|
def add_email_verification_columns():
|
|
engine = create_engine(DATABASE_URL)
|
|
|
|
columns = [
|
|
('email_verified', 'BOOLEAN DEFAULT FALSE'),
|
|
('verification_token', 'VARCHAR'),
|
|
('verification_token_expires', 'TIMESTAMP'),
|
|
('reset_token', 'VARCHAR'),
|
|
('reset_token_expires', 'TIMESTAMP'),
|
|
]
|
|
|
|
with Session(engine) as session:
|
|
for col_name, col_type in columns:
|
|
try:
|
|
session.exec(text(f"""
|
|
ALTER TABLE "user" ADD COLUMN IF NOT EXISTS {col_name} {col_type}
|
|
"""))
|
|
session.commit()
|
|
print(f"✅ Added {col_name} to user")
|
|
except Exception as e:
|
|
print(f"⚠️ {col_name}: {e}")
|
|
|
|
if __name__ == "__main__":
|
|
add_email_verification_columns()
|