package contact import ( "fmt" "strings" "time" ) // ContactEmailTemplateData represents the data needed for contact confirmation email type ContactEmailTemplateData struct { FullName string Email string Phone string Message string ContactID string SubmittedAt int64 CompanyName string CompanyURL string SupportEmail string } // GenerateContactConfirmationEmailTemplate generates a beautiful HTML email template for contact confirmation func GenerateContactConfirmationEmailTemplate(data *ContactEmailTemplateData) string { // Format the submission date submittedAt := time.Unix(data.SubmittedAt, 0).Format("January 2, 2006 at 3:04 PM") html := ` Contact Confirmation - ` + data.CompanyName + `

Thank You for Contacting Us!

Your message has been received and we'll get back to you soon.

✓ Your contact form has been submitted successfully!
Full Name: {{FULL_NAME}}
Email: {{EMAIL}}
Phone: {{PHONE}}
Reference ID: {{CONTACT_ID}}
Your Message: {{MESSAGE}}
Submitted on: {{SUBMITTED_AT}}

This email confirms your submission to ` + data.CompanyName + `

Need Immediate Assistance?

Email: {{SUPPORT_EMAIL}}

Website: {{COMPANY_URL}}

Our team typically responds within 24 hours during business days.

` // Replace placeholders with actual data html = strings.ReplaceAll(html, "{{COMPANY_NAME}}", data.CompanyName) html = strings.ReplaceAll(html, "{{FULL_NAME}}", data.FullName) html = strings.ReplaceAll(html, "{{EMAIL}}", data.Email) html = strings.ReplaceAll(html, "{{PHONE}}", data.Phone) html = strings.ReplaceAll(html, "{{CONTACT_ID}}", data.ContactID) html = strings.ReplaceAll(html, "{{MESSAGE}}", data.Message) html = strings.ReplaceAll(html, "{{SUBMITTED_AT}}", submittedAt) html = strings.ReplaceAll(html, "{{COMPANY_URL}}", data.CompanyURL) html = strings.ReplaceAll(html, "{{SUPPORT_EMAIL}}", data.SupportEmail) return html } // GenerateContactConfirmationEmailMessage generates a simple text message for the email func GenerateContactConfirmationEmailMessage(data *ContactEmailTemplateData) string { submittedAt := time.Unix(data.SubmittedAt, 0).Format("January 2, 2006 at 3:04 PM") return fmt.Sprintf(` Contact Form Submission Confirmation Thank you for contacting us! Your message has been received successfully. Contact Details: - Full Name: %s - Email: %s - Phone: %s - Reference ID: %s - Submitted on: %s Your Message: %s Our team will review your inquiry and get back to you within 24 hours during business days. For urgent matters, please contact us directly: Email: %s Website: %s This is an automated confirmation email from %s. Please do not reply to this email. `, data.FullName, data.Email, data.Phone, data.ContactID, submittedAt, data.Message, data.SupportEmail, data.CompanyURL, data.CompanyName, ) }