Bug fix to DNS and User creation.

This commit is contained in:
usmannasir
2018-03-01 13:22:01 +05:00
parent c5ac735e24
commit 6c6185b565
5 changed files with 60 additions and 63 deletions

View File

@@ -9,6 +9,7 @@ from loginSystem.models import Administrator
import os
from loginSystem.views import loadLoginPage
from models import Domains,Records
from re import match,I,M
# Create your views here.
@@ -334,17 +335,24 @@ def addDNSRecord(request):
recordType = data['recordType']
recordName = data['recordName']
admin = Administrator.objects.get(pk=val)
#admin = Administrator.objects.get(pk=val)
zone = Domains.objects.get(name=zoneDomain)
value = recordName+"."+zoneDomain
value = ""
if recordType == "A":
recordContentA = data['recordContentA'] ## IP or ponting value
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
record = Records( domainOwner=zone,
domain_id=zone.id,
name=value,
@@ -356,6 +364,15 @@ def addDNSRecord(request):
auth=1 )
record.save()
elif recordType == "MX":
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
recordContentMX = data['recordContentMX']
record = Records(domainOwner=zone,
domain_id=zone.id,
@@ -368,9 +385,18 @@ def addDNSRecord(request):
auth=1)
record.save()
elif recordType == "AAAA":
recordContentAAAA = data['recordContentAAAA'] ## IP or ponting value
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
record = Records( domainOwner=zone,
domain_id=zone.id,
name=value,
@@ -383,7 +409,15 @@ def addDNSRecord(request):
record.save()
elif recordType == "CNAME":
recordName = data['recordName']
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
recordContentCNAME = data['recordContentCNAME'] ## IP or ponting value
record = Records( domainOwner=zone,
domain_id=zone.id,
@@ -398,8 +432,15 @@ def addDNSRecord(request):
elif recordType == "SPF":
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
recordContentSPF = data['recordContentSPF'] ## IP or ponting value
record = Records( domainOwner=zone,
domain_id=zone.id,
@@ -414,8 +455,15 @@ def addDNSRecord(request):
elif recordType == "TXT":
if recordName == "@":
value = zoneDomain
## re.match
elif match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', recordName, M | I):
value = recordName
else:
value = recordName + "." + zoneDomain
recordContentTXT = data['recordContentTXT'] ## IP or ponting value
record = Records( domainOwner=zone,
domain_id=zone.id,

View File

@@ -1,38 +1,7 @@
from xml.etree import ElementTree
import os
from random import randint
import re
try:
mydoc = ElementTree.parse('domain.xml')
line = "usman.exampl.com"
matchObj = re.match( r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', line, re.M|re.I)
len = 0
if len == 0:
raise BaseException("Error occurred!")
domains = mydoc.findall('ChildDomains/domain')
for d in domains:
print d.find('domain').text
print d.find('phpSelection').text
print d.find('path').text
databases = mydoc.findall('Databases/database')
for d in databases:
print d.find('dbName').text
print d.find('dbUser').text
print d.find('password').text
dnsrecords = mydoc.findall('dnsrecords/dnsrecord')
for dnsrecord in dnsrecords:
print dnsrecord.find('type').text
print dnsrecord.find('name').text
print dnsrecord.find('content').text
print dnsrecord.find('priority').text
print os.path.join("/home", "cyberpanel", str(randint(1000, 9999)) + ".xml/", "test")
except BaseException,msg:
print str(msg)
if matchObj:
print line

View File

@@ -99,16 +99,6 @@
<div ng-hide="webLimits" class="form-group">
<label class="col-sm-3 control-label">{% trans "Websites Limit" %}</label>
<div class="col-sm-6">
<input name="websitesLimit" type="number" class="form-control" ng-model="websitesLimit" required>
</div>
<div ng-show="createUser.websitesLimit.$error.number" class="current-pack">{% trans "Only Numbers" %}</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">{% trans "Username" %}</label>
<div class="col-sm-6">

View File

@@ -94,14 +94,6 @@
<div ng-hide="websitesLimit" class="form-group">
<label class="col-sm-3 control-label">{% trans "Websites Limit" %}</label>
<div class="col-sm-6">
<input type="number" class="form-control" ng-model="websitesLimitValue" required>
</div>
</div>
<div ng-hide="acctDetailsFetched" class="form-group">
<label class="col-sm-3 control-label">{% trans "Password" %}</label>
<div class="col-sm-6">

View File

@@ -140,7 +140,6 @@ def submitUserCreation(request):
return HttpResponse(final_json)
elif accountType == "Normal User":
websitesLimit = data['websitesLimit']
newAdmin = Administrator(firstName=firstName,
lastName=lastName,
@@ -148,7 +147,7 @@ def submitUserCreation(request):
type=3,
userName=userName,
password=password,
initWebsitesLimit=websitesLimit,
initWebsitesLimit=0,
owner=currentAdmin.pk
)
newAdmin.save()
@@ -325,13 +324,12 @@ def saveModifications(request):
user.save()
elif data['accountType'] == "Normal User":
websitesLimit = data['websitesLimit']
user.firstName = firstName
user.lastName = lastName
user.email = email
user.password = password
user.initWebsitesLimit = websitesLimit
user.initWebsitesLimit = 0
user.type = 3
user.save()