40 lines
1.9 KiB
Python
40 lines
1.9 KiB
Python
|
|
from django.db import models
|
|||
|
|
|
|||
|
|
|
|||
|
|
class FeedbackFromForm(models.Model):
|
|||
|
|
email = models.EmailField(verbose_name='Адрес электронной почты')
|
|||
|
|
subject = models.CharField(max_length=255, verbose_name='Тема письма')
|
|||
|
|
body = models.TextField(verbose_name='Содержимое')
|
|||
|
|
created_at = models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')
|
|||
|
|
success = models.BooleanField(default=False, verbose_name='Успешно отправлено')
|
|||
|
|
error_message = models.TextField(verbose_name='Ошибка', null=True, blank=True)
|
|||
|
|
|
|||
|
|
def __str__(self):
|
|||
|
|
return f"{self.email} - {self.subject}"
|
|||
|
|
|
|||
|
|
class Meta:
|
|||
|
|
verbose_name = 'Данные с форм'
|
|||
|
|
verbose_name_plural = 'Данные с форм'
|
|||
|
|
|
|||
|
|
|
|||
|
|
class EmailConnectionSettings(models.Model):
|
|||
|
|
host = models.CharField(max_length=255, verbose_name='Хост')
|
|||
|
|
port = models.IntegerField(verbose_name='Порт')
|
|||
|
|
username = models.CharField(max_length=255, verbose_name='Имя пользователя', blank=True, null=True)
|
|||
|
|
password = models.CharField(max_length=255, verbose_name='Пароль', blank=True, null=True)
|
|||
|
|
use_tls = models.BooleanField(verbose_name='Использовать TLS', default=False)
|
|||
|
|
use_ssl = models.BooleanField(verbose_name='Использовать SSL', default=False)
|
|||
|
|
ssl_keyfile = models.CharField(
|
|||
|
|
max_length=255, verbose_name='путь к SSL ключу', blank=True, null=True
|
|||
|
|
)
|
|||
|
|
ssl_certfile = models.CharField(
|
|||
|
|
max_length=255, verbose_name='путь к SSL сертификату', blank=True, null=True
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
class Meta:
|
|||
|
|
verbose_name = 'Настройки подключения к email-серверу'
|
|||
|
|
verbose_name_plural = 'Настройки подключения к email-серверу'
|
|||
|
|
|
|||
|
|
def __str__(self):
|
|||
|
|
return f"{self.host}:{self.port} ({'TLS' if self.use_tls else 'SSL' if self.use_ssl else 'Нет'})"
|