from fastapi import APIRouter, Depends, status from sqlalchemy.orm import Session from core.database import get_db from schemas.contact_form import ContactFormCreate from helpers.contact_form_helpers import handle_contact_form_submission router = APIRouter() @router.post("/contact", status_code=status.HTTP_201_CREATED) async def submit_contact_form( contact_form: ContactFormCreate, db: Session = Depends(get_db) ): """ Submit a contact form with name, email, and message. All fields are required and email must be in valid format. """ # Convert Pydantic model to dict for processing form_data = contact_form.dict() # Process the form submission using the helper function # This will validate fields and handle database operations result = handle_contact_form_submission(db, form_data) return result