-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/manageServices/views.py b/manageServices/views.py
index 7be89c030..d5ccd6aad 100755
--- a/manageServices/views.py
+++ b/manageServices/views.py
@@ -9,7 +9,7 @@ import os
import json
from plogical.mailUtilities import mailUtilities
from plogical.acl import ACLManager
-from models import PDNSStatus
+from models import PDNSStatus, SlaveServers
from .serviceManager import ServiceManager
from plogical.processUtilities import ProcessUtilities
# Create your views here.
@@ -96,11 +96,11 @@ def fetchStatus(request):
try:
pdns = PDNSStatus.objects.get(pk=1)
data_ret['installCheck'] = pdns.serverStatus
- data_ret['slaveIPData'] = pdns.also_notify
+ #data_ret['slaveIPData'] = pdns.also_notify
except:
PDNSStatus(serverStatus=1).save()
data_ret['installCheck'] = 1
- data_ret['slaveIPData'] = ''
+ #data_ret['slaveIPData'] = ''
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -161,16 +161,41 @@ def saveStatus(request):
pdns = PDNSStatus.objects.get(pk=1)
pdns.serverStatus = 1
- pdns.allow_axfr_ips = data['slaveIPData'].replace(',', '/32,')
- pdns.also_notify = data['slaveIPData']
pdns.type = data['dnsMode']
- pdns.save()
- extraArgs = {}
- extraArgs['type'] = data['dnsMode']
- extraArgs['slaveIPData'] = data['slaveIPData']
- sm = ServiceManager(extraArgs)
+ if data['dnsMode'] == 'SLAVE':
+ pdns.masterServer = data['slaveServerNS']
+ pdns.masterIP = data['masterServerIP']
+ pdns.save()
+ else:
+ pdns.masterServer = 'NONE'
+ pdns.masterIP = 'NONE'
+ pdns.save()
+
+ for items in SlaveServers.objects.all():
+ items.delete()
+
+ slaveServer = SlaveServers(slaveServer=data['slaveServer'],
+ slaveServerIP=data['slaveServerIP'])
+ slaveServer.save()
+
+ try:
+ slaveServer = SlaveServers(slaveServer=data['slaveServer2'], slaveServerIP=data['slaveServerIP2'])
+ slaveServer.save()
+ except:
+ pass
+
+ try:
+ slaveServer = SlaveServers(slaveServer=data['slaveServer3'], slaveServerIP=data['slaveServerIP3'])
+ slaveServer.save()
+ except:
+ pass
+
+
+ data['type'] = data['dnsMode']
+
+ sm = ServiceManager(data)
sm.managePDNS()
command = 'sudo systemctl enable pdns'
diff --git a/plogical/dnsUtilities.py b/plogical/dnsUtilities.py
index 209cd2717..a3e8dfe10 100755
--- a/plogical/dnsUtilities.py
+++ b/plogical/dnsUtilities.py
@@ -9,7 +9,7 @@ import subprocess
import shlex
from dns.models import Domains,Records
from processUtilities import ProcessUtilities
-from manageServices.models import PDNSStatus
+from manageServices.models import PDNSStatus, SlaveServers
class DNS:
@@ -49,6 +49,39 @@ class DNS:
zone.save()
+ record = Records(domainOwner=zone,
+ domain_id=zone.id,
+ name=topLevelDomain,
+ type="NS",
+ content='hostmaster.%s' % (topLevelDomain),
+ ttl=3600,
+ prio=0,
+ disabled=0,
+ auth=1)
+ record.save()
+
+ record = Records(domainOwner=zone,
+ domain_id=zone.id,
+ name=topLevelDomain,
+ type="NS",
+ content='ns1.%s' % (topLevelDomain),
+ ttl=3600,
+ prio=0,
+ disabled=0,
+ auth=1)
+ record.save()
+
+ record = Records(domainOwner=zone,
+ domain_id=zone.id,
+ name=topLevelDomain,
+ type="NS",
+ content='ns2.%s' % (topLevelDomain),
+ ttl=3600,
+ prio=0,
+ disabled=0,
+ auth=1)
+ record.save()
+
content = "ns1." + topLevelDomain + " hostmaster." + topLevelDomain + " 1 10800 3600 604800 3600"
soaRecord = Records(domainOwner=zone,
diff --git a/plogical/website.py b/plogical/website.py
index 73aa58d58..c4630ee68 100755
--- a/plogical/website.py
+++ b/plogical/website.py
@@ -1,4 +1,4 @@
-createWebsiteAPI#!/usr/local/CyberCP/bin/python2
+#!/usr/local/CyberCP/bin/python2
import os
import os.path
import sys