From 80eaf741bb89cf5a87bfde39b5a968de5e2dcb5f Mon Sep 17 00:00:00 2001 From: Usman Nasir Date: Tue, 18 Feb 2020 20:15:07 +0500 Subject: [PATCH] make mail child domain optional --- plogical/virtualHostUtilities.py | 86 ++++++++++--------- .../websiteFunctions/websiteFunctions.js | 12 ++- .../websiteFunctions/createWebsite.html | 9 ++ websiteFunctions/website.py | 9 +- 4 files changed, 71 insertions(+), 45 deletions(-) diff --git a/plogical/virtualHostUtilities.py b/plogical/virtualHostUtilities.py index b9666d9e4..654df45bc 100755 --- a/plogical/virtualHostUtilities.py +++ b/plogical/virtualHostUtilities.py @@ -58,7 +58,7 @@ class virtualHostUtilities: @staticmethod def createVirtualHost(virtualHostName, administratorEmail, phpVersion, virtualHostUser, ssl, dkimCheck, openBasedir, websiteOwner, packageName, apache, - tempStatusPath='/home/cyberpanel/fakePath'): + tempStatusPath='/home/cyberpanel/fakePath', mailDomain = None): try: logging.CyberCPLogFileWriter.statusWriter(tempStatusPath, 'Running some checks..,0') @@ -206,56 +206,57 @@ class virtualHostUtilities: ### For autodiscover of mail clients. - logging.CyberCPLogFileWriter.statusWriter(tempStatusPath, 'Creating mail child domain..,80') - childDomain = 'mail.%s' % (virtualHostName) - childPath = '/home/%s/public_html/%s' % (virtualHostName, childDomain) + if mailDomain: + logging.CyberCPLogFileWriter.statusWriter(tempStatusPath, 'Creating mail child domain..,80') + childDomain = 'mail.%s' % (virtualHostName) + childPath = '/home/%s/public_html/%s' % (virtualHostName, childDomain) - virtualHostUtilities.createDomain(virtualHostName, childDomain, 'PHP 7.2', childPath, 1, 0, 0, admin.userName, 0, "/home/cyberpanel/" + str(randint(1000, 9999))) + virtualHostUtilities.createDomain(virtualHostName, childDomain, 'PHP 7.2', childPath, 1, 0, 0, admin.userName, 0, "/home/cyberpanel/" + str(randint(1000, 9999))) - ## update dovecot conf to enable auto-discover + ## update dovecot conf to enable auto-discover - dovecotPath = '/etc/dovecot/dovecot.conf' + dovecotPath = '/etc/dovecot/dovecot.conf' - if os.path.exists(dovecotPath): - dovecotContent = open(dovecotPath, 'r').read() + if os.path.exists(dovecotPath): + dovecotContent = open(dovecotPath, 'r').read() - if dovecotContent.find(childDomain) == -1: - content = """\nlocal_name %s { - ssl_cert = + +
+
+ +
+
diff --git a/websiteFunctions/website.py b/websiteFunctions/website.py index f7f47abee..6604340e4 100755 --- a/websiteFunctions/website.py +++ b/websiteFunctions/website.py @@ -199,6 +199,8 @@ class WebsiteManager: except: externalApp = "".join(re.findall("[a-zA-Z]+", domain))[:7] + + try: counter = 0 while 1: @@ -215,6 +217,11 @@ class WebsiteManager: except: apacheBackend = "0" + try: + mailDomain = str(data['mailDomain']) + except: + mailDomain = "1" + import pwd counter = 0 while 1: @@ -232,7 +239,7 @@ class WebsiteManager: " --administratorEmail " + adminEmail + " --phpVersion '" + phpSelection + \ "' --virtualHostUser " + externalApp + " --ssl " + str(data['ssl']) + " --dkimCheck " \ + str(data['dkimCheck']) + " --openBasedir " + str(data['openBasedir']) + \ - ' --websiteOwner ' + websiteOwner + ' --package ' + packageName + ' --tempStatusPath ' + tempStatusPath + " --apache " + apacheBackend + ' --websiteOwner ' + websiteOwner + ' --package ' + packageName + ' --tempStatusPath ' + tempStatusPath + " --apache " + apacheBackend + " --mailDomain %s" % (mailDomain) ProcessUtilities.popenExecutioner(execPath) time.sleep(2)