Files
smoothschedule/smoothschedule/tickets/migrations/0008_add_smtp_settings.py
poduck cfc1b36ada feat: Add SMTP settings and collapsible email configuration UI
- Add SMTP fields to TicketEmailSettings model (host, port, TLS/SSL, credentials, from email/name)
- Update serializers with SMTP fields and is_smtp_configured flag
- Add TicketEmailTestSmtpView for testing SMTP connections
- Update frontend API types and hooks for SMTP settings
- Add collapsible IMAP and SMTP configuration sections with "Configured" badges
- Fix TypeScript errors in mockData.ts (missing required fields, type mismatches)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:28:29 -05:00

54 lines
2.2 KiB
Python

# Generated by Django 5.2.8 on 2025-11-29 23:11
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('tickets', '0007_add_external_author_to_comment'),
]
operations = [
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_from_email',
field=models.EmailField(blank=True, default='', help_text='From email address for outgoing emails', max_length=254),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_from_name',
field=models.CharField(blank=True, default='', help_text="From name for outgoing emails (e.g., 'SmoothSchedule Support')", max_length=255),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_host',
field=models.CharField(blank=True, default='', help_text='SMTP server hostname (e.g., smtp.gmail.com)', max_length=255),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_password',
field=models.CharField(blank=True, default='', help_text='SMTP login password or app-specific password', max_length=255),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_port',
field=models.IntegerField(default=587, help_text='SMTP server port (587 for TLS, 465 for SSL, 25 for non-secure)'),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_use_ssl',
field=models.BooleanField(default=False, help_text='Use SSL/TLS encryption (usually for port 465)'),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_use_tls',
field=models.BooleanField(default=True, help_text='Use STARTTLS encryption'),
),
migrations.AddField(
model_name='ticketemailsettings',
name='smtp_username',
field=models.CharField(blank=True, default='', help_text='SMTP login username (usually email address)', max_length=255),
),
]