This commit is contained in:
Usman Nasir
2021-02-22 10:18:50 +05:00
parent f421dfa549
commit 72ae933042
8 changed files with 948 additions and 1098 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,4 @@
# -*- coding: utf-8 -*-
from django.shortcuts import render,redirect
from django.http import HttpResponse
from plogical.getSystemInformation import SystemInformation
@@ -16,6 +14,7 @@ from plogical.acl import ACLManager
from manageServices.models import PDNSStatus
from django.views.decorators.csrf import ensure_csrf_cookie
from plogical.processUtilities import ProcessUtilities
from plogical.httpProc import httpProc
# Create your views here.
VERSION = '2.0'
@@ -23,22 +22,12 @@ BUILD = 3
@ensure_csrf_cookie
def renderBase(request):
try:
userID = request.session['userID']
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
admin = 1
else:
admin = 0
cpuRamDisk = SystemInformation.cpuRamDisk()
finaData = {"admin": admin,'ramUsage':cpuRamDisk['ramUsage'],'cpuUsage':cpuRamDisk['cpuUsage'],'diskUsage':cpuRamDisk['diskUsage'] }
return render(request, 'baseTemplate/homePage.html', finaData)
except KeyError:
return redirect(loadLoginPage)
template = 'baseTemplate/homePage.html'
cpuRamDisk = SystemInformation.cpuRamDisk()
finaData = {'ramUsage': cpuRamDisk['ramUsage'], 'cpuUsage': cpuRamDisk['cpuUsage'],
'diskUsage': cpuRamDisk['diskUsage']}
proc = httpProc(request, template, finaData)
return proc.render()
def getAdminStatus(request):
try:

View File

@@ -76,73 +76,76 @@ class ACLManager:
else:
finalResponse['admin'] = 0
config = json.loads(admin.acl.config)
acl = ACL.objects.get(name=admin.acl.name)
finalResponse['versionManagement'] = acl.versionManagement
finalResponse['versionManagement'] = config['versionManagement']
## User Management
finalResponse['createNewUser'] = acl.createNewUser
finalResponse['listUsers'] = acl.listUsers
finalResponse['deleteUser'] = acl.deleteUser
finalResponse['changeUserACL'] = acl.changeUserACL
finalResponse['resellerCenter'] = acl.resellerCenter
finalResponse['createNewUser'] = config['createNewUser']
finalResponse['listUsers'] = config['listUsers']
finalResponse['deleteUser'] = config['deleteUser']
finalResponse['changeUserACL'] = config['changeUserACL']
finalResponse['resellerCenter'] = config['resellerCenter']
## Website Management
finalResponse['createWebsite'] = acl.createWebsite
finalResponse['modifyWebsite'] = acl.modifyWebsite
finalResponse['suspendWebsite'] = acl.suspendWebsite
finalResponse['deleteWebsite'] = acl.deleteWebsite
finalResponse['createWebsite'] = config['createWebsite']
finalResponse['modifyWebsite'] = config['modifyWebsite']
finalResponse['suspendWebsite'] = config['suspendWebsite']
finalResponse['deleteWebsite'] = config['deleteWebsite']
## Package Management
finalResponse['createPackage'] = acl.createPackage
finalResponse['listPackages'] = acl.listPackages
finalResponse['deletePackage'] = acl.deletePackage
finalResponse['modifyPackage'] = acl.modifyPackage
finalResponse['createPackage'] = config['createPackage']
finalResponse['listPackages'] = config['listPackages']
finalResponse['deletePackage'] = config['deletePackage']
finalResponse['modifyPackage'] = config['modifyPackage']
## Database Management
finalResponse['createDatabase'] = acl.createDatabase
finalResponse['deleteDatabase'] = acl.deleteDatabase
finalResponse['listDatabases'] = acl.listDatabases
finalResponse['createDatabase'] = config['createDatabase']
finalResponse['deleteDatabase'] = config['deleteDatabase']
finalResponse['listDatabases'] = config['listDatabases']
## DNS Management
finalResponse['createNameServer'] = acl.createNameServer
finalResponse['createDNSZone'] = acl.createDNSZone
finalResponse['deleteZone'] = acl.deleteZone
finalResponse['addDeleteRecords'] = acl.addDeleteRecords
finalResponse['createNameServer'] = config['createNameServer']
finalResponse['createDNSZone'] = config['createDNSZone']
finalResponse['deleteZone'] = config['deleteZone']
finalResponse['addDeleteRecords'] = config['addDeleteRecords']
## Email Management
finalResponse['createEmail'] = acl.createEmail
finalResponse['listEmails'] = acl.listEmails
finalResponse['deleteEmail'] = acl.deleteEmail
finalResponse['emailForwarding'] = acl.emailForwarding
finalResponse['changeEmailPassword'] = acl.changeEmailPassword
finalResponse['dkimManager'] = acl.dkimManager
finalResponse['createEmail'] = config['createEmail']
finalResponse['listEmails'] = config['listEmails']
finalResponse['deleteEmail'] = config['deleteEmail']
finalResponse['emailForwarding'] = config['emailForwarding']
finalResponse['changeEmailPassword'] = config['changeEmailPassword']
finalResponse['dkimManager'] = config['dkimManager']
## FTP Management
finalResponse['createFTPAccount'] = acl.createFTPAccount
finalResponse['deleteFTPAccount'] = acl.deleteFTPAccount
finalResponse['listFTPAccounts'] = acl.listFTPAccounts
finalResponse['createFTPAccount'] = config['createFTPAccount']
finalResponse['deleteFTPAccount'] = config['deleteFTPAccount']
finalResponse['listFTPAccounts'] = config['listFTPAccounts']
## Backup Management
finalResponse['createBackup'] = acl.createBackup
finalResponse['restoreBackup'] = acl.restoreBackup
finalResponse['addDeleteDestinations'] = acl.addDeleteDestinations
finalResponse['scheDuleBackups'] = acl.scheDuleBackups
finalResponse['remoteBackups'] = acl.remoteBackups
finalResponse['createBackup'] = config['createBackup']
finalResponse['googleDriveBackups'] = config['googleDriveBackups']
finalResponse['restoreBackup'] = config['restoreBackup']
finalResponse['addDeleteDestinations'] = config['addDeleteDestinations']
finalResponse['scheDuleBackups'] = config['scheDuleBackups']
finalResponse['remoteBackups'] = config['remoteBackups']
## SSL Management
finalResponse['manageSSL'] = acl.manageSSL
finalResponse['hostnameSSL'] = acl.hostnameSSL
finalResponse['mailServerSSL'] = acl.mailServerSSL
finalResponse['manageSSL'] = config['manageSSL']
finalResponse['hostnameSSL'] = config['hostnameSSL']
finalResponse['mailServerSSL'] = config['mailServerSSL']
return finalResponse

View File

@@ -12,18 +12,17 @@ class httpProc:
def render(self):
try:
from loginSystem.models import Administrator
from plogical.acl import ACLManager
userID = self.request.session['userID']
admin = self.data['admin']
admin = Administrator.objects.get(pk=userID)
###
if self.data == None:
self.data = {}
self.data['fullName'] = admin.fullName
self.data['ownerEmail'] = admin.email
self.data.update(ACLManager.loadedACL(userID))
return render(self.request, self.templateName, self.data)
except BaseException as msg:

View File

@@ -458,6 +458,7 @@ app.controller('deleteUser', function ($scope, $http) {
/* Java script code to create acl */
app.controller('createACLCTRL', function ($scope, $http) {
$scope.aclLoading = true;
@@ -520,11 +521,13 @@ app.controller('createACLCTRL', function ($scope, $http) {
// Backup Management
$scope.createBackup = true;
$scope.googleDriveBackups = true;
$scope.restoreBackup = false;
$scope.addDeleteDestinations = false;
$scope.scheDuleBackups = false;
$scope.remoteBackups = false;
// SSL Management
$scope.manageSSL = true;
@@ -599,6 +602,7 @@ app.controller('createACLCTRL', function ($scope, $http) {
// Backup Management
createBackup: $scope.createBackup,
googleDriveBackups: $scope.googleDriveBackups,
restoreBackup: $scope.restoreBackup,
addDeleteDestinations: $scope.addDeleteDestinations,
scheDuleBackups: $scope.scheDuleBackups,
@@ -976,6 +980,7 @@ app.controller('modifyACLCtrl', function ($scope, $http) {
// Backup Management
$scope.createBackup = Boolean(response.data.createBackup);
$scope.googleDriveBackups = Boolean(response.data.googleDriveBackups);
$scope.restoreBackup = Boolean(response.data.restoreBackup);
$scope.addDeleteDestinations = Boolean(response.data.addDeleteDestinations);
$scope.scheDuleBackups = Boolean(response.data.scheDuleBackups);
@@ -1076,6 +1081,7 @@ app.controller('modifyACLCtrl', function ($scope, $http) {
// Backup Management
createBackup: $scope.createBackup,
googleDriveBackups: $scope.googleDriveBackups,
restoreBackup: $scope.restoreBackup,
addDeleteDestinations: $scope.addDeleteDestinations,
scheDuleBackups: $scope.scheDuleBackups,

View File

@@ -353,6 +353,17 @@
</label>
</div>
</div>
<label class="col-sm-3 control-label"></label>
<div class="col-sm-9">
<div class="checkbox">
<label>
<input ng-model="googleDriveBackups" type="checkbox" value="">
{% trans "Google Drive Backups" %}
</label>
</div>
</div>
<label class="col-sm-3 control-label"></label>
<div class="col-sm-9">
<div class="checkbox">

View File

@@ -357,6 +357,17 @@
</label>
</div>
</div>
<label class="col-sm-3 control-label">{% trans "" %}</label>
<div class="col-sm-9">
<div class="checkbox">
<label>
<input ng-model="googleDriveBackups" type="checkbox" value="">
{% trans "Google Drive Backups" %}
</label>
</div>
</div>
<label class="col-sm-3 control-label"></label>
<div class="col-sm-9">
<div class="checkbox">

View File

@@ -514,74 +514,12 @@ def createACLFunc(request):
## Version Management
newACL = ACL(name=data['aclName'],
adminStatus=int(data['makeAdmin']),
if data['makeAdmin']:
data['adminStatus'] = 1
else:
data['adminStatus'] = 0
versionManagement=int(data['versionManagement']),
## User Management
createNewUser=int(data['createNewUser']),
listUsers=int(data['listUsers']),
resellerCenter=int(data['resellerCenter']),
deleteUser=int(data['deleteUser']),
changeUserACL=int(data['changeUserACL']),
## Website Management
createWebsite=int(data['createWebsite']),
modifyWebsite=int(data['modifyWebsite']),
suspendWebsite=int(data['suspendWebsite']),
deleteWebsite=int(data['deleteWebsite']),
## Package Management
createPackage=int(data['createPackage']),
listPackages=int(data['listPackages']),
deletePackage=int(data['deletePackage']),
modifyPackage=int(data['modifyPackage']),
## Database Management
createDatabase=int(data['createDatabase']),
deleteDatabase=int(data['deleteDatabase']),
listDatabases=int(data['listDatabases']),
## DNS Management
createNameServer=int(data['createNameServer']),
createDNSZone=int(data['createDNSZone']),
deleteZone=int(data['deleteZone']),
addDeleteRecords=int(data['addDeleteRecords']),
## Email Management
createEmail=int(data['createEmail']),
listEmails=int(data['listEmails']),
deleteEmail=int(data['deleteEmail']),
emailForwarding=int(data['emailForwarding']),
changeEmailPassword=int(data['changeEmailPassword']),
dkimManager=int(data['dkimManager']),
## FTP Management
createFTPAccount=int(data['createFTPAccount']),
deleteFTPAccount=int(data['deleteFTPAccount']),
listFTPAccounts=int(data['listFTPAccounts']),
## Backup Management
createBackup=int(data['createBackup']),
restoreBackup=int(data['restoreBackup']),
addDeleteDestinations=int(data['addDeleteDestinations']),
scheDuleBackups=int(data['scheDuleBackups']),
remoteBackups=int(data['remoteBackups']),
## SSL Management
manageSSL=int(data['manageSSL']),
hostnameSSL=int(data['hostnameSSL']),
mailServerSSL=int(data['mailServerSSL']),
)
newACL = ACL(name=data['aclName'],config=json.dumps(data))
newACL.save()
finalResponse = {'status': 1}
@@ -658,75 +596,8 @@ def fetchACLDetails(request):
## Version Management
finalResponse = {}
acl = ACL.objects.get(name=data['aclToModify'])
finalResponse['versionManagement'] = acl.versionManagement
finalResponse['adminStatus'] = acl.adminStatus
## User Management
finalResponse['createNewUser'] = acl.createNewUser
finalResponse['listUsers'] = acl.listUsers
finalResponse['resellerCenter'] = acl.resellerCenter
finalResponse['deleteUser'] = acl.deleteUser
finalResponse['changeUserACL'] = acl.changeUserACL
## Website Management
finalResponse['createWebsite'] = acl.createWebsite
finalResponse['modifyWebsite'] = acl.modifyWebsite
finalResponse['suspendWebsite'] = acl.suspendWebsite
finalResponse['deleteWebsite'] = acl.deleteWebsite
## Package Management
finalResponse['createPackage'] = acl.createPackage
finalResponse['listPackages'] = acl.listPackages
finalResponse['deletePackage'] = acl.deletePackage
finalResponse['modifyPackage'] = acl.modifyPackage
## Database Management
finalResponse['createDatabase'] = acl.createDatabase
finalResponse['deleteDatabase'] = acl.deleteDatabase
finalResponse['listDatabases'] = acl.listDatabases
## DNS Management
finalResponse['createNameServer'] = acl.createNameServer
finalResponse['createDNSZone'] = acl.createDNSZone
finalResponse['deleteZone'] = acl.deleteZone
finalResponse['addDeleteRecords'] = acl.addDeleteRecords
## Email Management
finalResponse['createEmail'] = acl.createEmail
finalResponse['listEmails'] = acl.listEmails
finalResponse['deleteEmail'] = acl.deleteEmail
finalResponse['emailForwarding'] = acl.emailForwarding
finalResponse['changeEmailPassword'] = acl.changeEmailPassword
finalResponse['dkimManager'] = acl.dkimManager
## FTP Management
finalResponse['createFTPAccount'] = acl.createFTPAccount
finalResponse['deleteFTPAccount'] = acl.deleteFTPAccount
finalResponse['listFTPAccounts'] = acl.listFTPAccounts
## Backup Management
finalResponse['createBackup'] = acl.createBackup
finalResponse['restoreBackup'] = acl.restoreBackup
finalResponse['addDeleteDestinations'] = acl.addDeleteDestinations
finalResponse['scheDuleBackups'] = acl.scheDuleBackups
finalResponse['remoteBackups'] = acl.remoteBackups
## SSL Management
finalResponse['manageSSL'] = acl.manageSSL
finalResponse['hostnameSSL'] = acl.hostnameSSL
finalResponse['mailServerSSL'] = acl.mailServerSSL
finalResponse = json.loads(acl.config)
finalResponse['status'] = 1
else:
return ACLManager.loadErrorJson()
@@ -750,73 +621,7 @@ def submitACLModifications(request):
## Version Management
acl = ACL.objects.get(name=data['aclToModify'])
acl.adminStatus = int(data['adminStatus'])
acl.versionManagement = int(data['versionManagement'])
## User Management
acl.createNewUser = int(data['createNewUser'])
acl.listUsers = int(data['listUsers'])
acl.resellerCenter = int(data['resellerCenter'])
acl.deleteUser = int(data['deleteUser'])
acl.changeUserACL = int(data['changeUserACL'])
## Website Management
acl.createWebsite = int(data['createWebsite'])
acl.modifyWebsite = int(data['modifyWebsite'])
acl.suspendWebsite = int(data['suspendWebsite'])
acl.deleteWebsite = int(data['deleteWebsite'])
## Package Management
acl.createPackage = int(data['createPackage'])
acl.listPackages = int(data['listPackages'])
acl.deletePackage = int(data['deletePackage'])
acl.modifyPackage = int(data['modifyPackage'])
## Database Management
acl.createDatabase = int(data['createDatabase'])
acl.deleteDatabase = int(data['deleteDatabase'])
acl.listDatabases = int(data['listDatabases'])
## DNS Management
acl.createNameServer = int(data['createNameServer'])
acl.createDNSZone = int(data['createDNSZone'])
acl.deleteZone = int(data['deleteZone'])
acl.addDeleteRecords = int(data['addDeleteRecords'])
## Email Management
acl.createEmail = int(data['createEmail'])
acl.listEmails = int(data['listEmails'])
acl.deleteEmail = int(data['deleteEmail'])
acl.emailForwarding = int(data['emailForwarding'])
acl.changeEmailPassword = int(data['changeEmailPassword'])
acl.dkimManager = int(data['dkimManager'])
## FTP Management
acl.createFTPAccount = int(data['createFTPAccount'])
acl.deleteFTPAccount = int(data['deleteFTPAccount'])
acl.listFTPAccounts = int(data['listFTPAccounts'])
## Backup Management
acl.createBackup = int(data['createBackup'])
acl.restoreBackup = int(data['restoreBackup'])
acl.addDeleteDestinations = int(data['addDeleteDestinations'])
acl.scheDuleBackups = int(data['scheDuleBackups'])
acl.remoteBackups = int(data['remoteBackups'])
## SSL Management
acl.manageSSL = int(data['manageSSL'])
acl.hostnameSSL = int(data['hostnameSSL'])
acl.mailServerSSL = int(data['mailServerSSL'])
acl.config=json.dumps(data)
acl.save()
if int(data['adminStatus']) == 1: