mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2026-03-06 12:20:45 +01:00
delete record from cf
This commit is contained in:
@@ -736,4 +736,47 @@ class DNSManager:
|
||||
except BaseException as msg:
|
||||
final_dic = {'status': 0, 'fetchStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
def deleteDNSRecordCloudFlare(self, userID = None, data = None):
|
||||
try:
|
||||
currentACL = ACLManager.loadedACL(userID)
|
||||
|
||||
if ACLManager.currentContextPermission(currentACL, 'addDeleteRecords') == 0:
|
||||
return ACLManager.loadErrorJson('fetchStatus', 0)
|
||||
|
||||
zoneDomain = data['selectedZone']
|
||||
id = data['id']
|
||||
|
||||
admin = Administrator.objects.get(pk=userID)
|
||||
self.admin = admin
|
||||
|
||||
if ACLManager.checkOwnershipZone(zoneDomain, admin, currentACL) == 1:
|
||||
pass
|
||||
else:
|
||||
return ACLManager.loadErrorJson()
|
||||
|
||||
self.loadCFKeys()
|
||||
|
||||
params = {'name': zoneDomain, 'per_page': 50}
|
||||
cf = CloudFlare.CloudFlare(email=self.email, token=self.key)
|
||||
|
||||
try:
|
||||
zones = cf.zones.get(params=params)
|
||||
except CloudFlare.CloudFlareAPIError as e:
|
||||
final_json = json.dumps({'status': 0, 'delete_status': 0, 'error_message': str(e), "data": '[]'})
|
||||
return HttpResponse(final_json)
|
||||
|
||||
for zone in sorted(zones, key=lambda v: v['name']):
|
||||
zone_id = zone['id']
|
||||
|
||||
dns_record = cf.zones.dns_records.delete(zone_id, int(id))
|
||||
|
||||
final_dic = {'status': 1, 'delete_status': 1, 'error_message': "None"}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
except BaseException as msg:
|
||||
final_dic = {'status': 0, 'delete_status': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
@@ -971,10 +971,11 @@ app.controller('addModifyDNSRecordsCloudFlare', function ($scope, $http) {
|
||||
|
||||
var selectedZone = $scope.selectedZone;
|
||||
|
||||
url = "/dns/deleteDNSRecord";
|
||||
url = "/dns/deleteDNSRecordCloudFlare";
|
||||
|
||||
var data = {
|
||||
id: id,
|
||||
selectedZone: selectedZone,
|
||||
id: id
|
||||
};
|
||||
|
||||
var config = {
|
||||
|
||||
@@ -14,11 +14,13 @@ urlpatterns = [
|
||||
url(r'^zoneCreation', views.zoneCreation, name='zoneCreation'),
|
||||
url(r'^getCurrentRecordsForDomain$',views.getCurrentRecordsForDomain,name='getCurrentRecordsForDomain'),
|
||||
url(r'^addDNSRecord',views.addDNSRecord,name='addDNSRecord'),
|
||||
url(r'^deleteDNSRecord',views.deleteDNSRecord,name='deleteDNSRecord'),
|
||||
url(r'^deleteDNSRecord$',views.deleteDNSRecord,name='deleteDNSRecord'),
|
||||
url(r'^deleteDNSZone',views.deleteDNSZone,name='deleteDNSZone'),
|
||||
url(r'^submitZoneDeletion',views.submitZoneDeletion,name='submitZoneDeletion'),
|
||||
url(r'^saveNSConfigurations$', views.saveNSConfigurations, name='saveNSConfigurations'),
|
||||
url(r'^saveCFConfigs$', views.saveCFConfigs, name='saveCFConfigs'),
|
||||
|
||||
url(r'^getCurrentRecordsForDomainCloudFlare$', views.getCurrentRecordsForDomainCloudFlare, name='getCurrentRecordsForDomainCloudFlare'),
|
||||
url(r'^deleteDNSRecordCloudFlare$', views.deleteDNSRecordCloudFlare,
|
||||
name='deleteDNSRecordCloudFlare'),
|
||||
]
|
||||
11
dns/views.py
11
dns/views.py
@@ -197,3 +197,14 @@ def getCurrentRecordsForDomainCloudFlare(request):
|
||||
return dm.getCurrentRecordsForDomainCloudFlare(userID, json.loads(request.body))
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
def deleteDNSRecordCloudFlare(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
|
||||
dm = DNSManager()
|
||||
coreResult = dm.deleteDNSRecordCloudFlare(userID, json.loads(request.body))
|
||||
|
||||
return coreResult
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
Reference in New Issue
Block a user