mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2026-03-11 06:40:14 +01:00
45 lines
1.9 KiB
Python
45 lines
1.9 KiB
Python
|
|
from django.db import models
|
||
|
|
from loginSystem.models import Administrator
|
||
|
|
|
||
|
|
|
||
|
|
class CyberMailAccount(models.Model):
|
||
|
|
admin = models.OneToOneField(Administrator, on_delete=models.CASCADE, related_name='cybermail_account')
|
||
|
|
platform_account_id = models.IntegerField(null=True)
|
||
|
|
api_key = models.CharField(max_length=255, blank=True)
|
||
|
|
email = models.CharField(max_length=255)
|
||
|
|
plan_name = models.CharField(max_length=100, default='Free')
|
||
|
|
plan_slug = models.CharField(max_length=50, default='free')
|
||
|
|
emails_per_month = models.IntegerField(default=15000)
|
||
|
|
is_connected = models.BooleanField(default=False)
|
||
|
|
relay_enabled = models.BooleanField(default=False)
|
||
|
|
smtp_credential_id = models.IntegerField(null=True)
|
||
|
|
smtp_username = models.CharField(max_length=255, blank=True)
|
||
|
|
smtp_host = models.CharField(max_length=255, default='mail.cyberpersons.com')
|
||
|
|
smtp_port = models.IntegerField(default=587)
|
||
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
||
|
|
updated_at = models.DateTimeField(auto_now=True)
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
db_table = 'cybermail_accounts'
|
||
|
|
|
||
|
|
def __str__(self):
|
||
|
|
return f"CyberMail Account for {self.admin.userName}"
|
||
|
|
|
||
|
|
|
||
|
|
class CyberMailDomain(models.Model):
|
||
|
|
account = models.ForeignKey(CyberMailAccount, on_delete=models.CASCADE, related_name='domains')
|
||
|
|
domain = models.CharField(max_length=255)
|
||
|
|
platform_domain_id = models.IntegerField(null=True)
|
||
|
|
status = models.CharField(max_length=50, default='pending')
|
||
|
|
spf_verified = models.BooleanField(default=False)
|
||
|
|
dkim_verified = models.BooleanField(default=False)
|
||
|
|
dmarc_verified = models.BooleanField(default=False)
|
||
|
|
dns_configured = models.BooleanField(default=False)
|
||
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
db_table = 'cybermail_domains'
|
||
|
|
|
||
|
|
def __str__(self):
|
||
|
|
return f"CyberMail Domain: {self.domain}"
|