mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-10-26 15:56:34 +01:00
32 lines
1.3 KiB
Python
32 lines
1.3 KiB
Python
from emailPremium.models import DomainLimits, EmailLimits, EmailLogs
|
|
from mailServer.models import Domains, EUsers
|
|
|
|
class emailConstraints:
|
|
def __init__(self, emailAddress, monthlyLimits, monthlyUsed, hourlyLimits, hourlyUsed, limitStatus, logStatus):
|
|
self.emailAddress = emailAddress
|
|
self.monthlyLimits = monthlyLimits
|
|
self.monthlyUsed = monthlyUsed
|
|
self.hourlyLimits = hourlyLimits
|
|
self.hourlyUsed = hourlyUsed
|
|
self.limitStatus = limitStatus
|
|
self.logStatus = logStatus
|
|
|
|
class policyConstraints:
|
|
def __init__(self, domain, monthlyLimits, monthlyUsed, limitStatus):
|
|
self.domain = domain
|
|
self.emails = {}
|
|
self.monthlyLimits = monthlyLimits
|
|
self.monthlyUsed = monthlyUsed
|
|
self.limitStatus = limitStatus
|
|
|
|
|
|
def findEmailOBJ(self, emailAddress):
|
|
if emailAddress in self.emails:
|
|
return self.emails[emailAddress]
|
|
else:
|
|
email = EUsers.objects.get(email=emailAddress)
|
|
emailLTS = EmailLimits.objects.get(email=email)
|
|
newEmail = emailConstraints(emailAddress, emailLTS.monthlyLimits, emailLTS.monthlyUsed, emailLTS.hourlyLimit,
|
|
emailLTS.hourlyUsed, emailLTS.limitStatus, emailLTS.emailLogs)
|
|
self.emails[emailAddress] = newEmail
|
|
return newEmail |