Merge pull request #503 from therealgilles/feature/add-sendemail-fromheader

Add 'From' header to email message if missing
This commit is contained in:
WhatTheServer
2021-04-07 10:16:17 -04:00
committed by GitHub

View File

@@ -7,6 +7,18 @@ import smtplib
class CyberCPLogFileWriter:
fileName = "/home/cyberpanel/error-logs.txt"
@staticmethod
def AddFromHeader(sender, message):
try:
import re
if not re.search('^From: ', message, re.MULTILINE):
message = 'From: {}\n{}'.format(sender, message)
return message
except BaseException as msg:
CyberCPLogFileWriter.writeToFile(str(msg) + ' [AddFromHeader]')
@staticmethod
def SendEmail(sender, receivers, message, subject=None, type=None):
try:
@@ -29,9 +41,12 @@ class CyberCPLogFileWriter:
if subject != None:
message = 'Subject: {}\n\n{}'.format(subject, message)
message = CyberCPLogFileWriter.AddFromHeader(sender, message)
smtpServer.sendmail(smtpUserName, receivers, message)
else:
smtpObj = smtplib.SMTP('localhost')
message = CyberCPLogFileWriter.AddFromHeader(sender, message)
smtpObj.sendmail(sender, receivers, message)
except BaseException as msg:
CyberCPLogFileWriter.writeToFile(str(msg))
@@ -107,4 +122,4 @@ Subject: %s
statusFile.writelines(mesg + '\n')
statusFile.close()
except BaseException as msg:
CyberCPLogFileWriter.writeToFile(str(msg) + ' [statusWriter]')
CyberCPLogFileWriter.writeToFile(str(msg) + ' [statusWriter]')