diff --git a/serverStatus/views.py b/serverStatus/views.py
index d387d26e0..be36afba3 100644
--- a/serverStatus/views.py
+++ b/serverStatus/views.py
@@ -8,23 +8,15 @@ import plogical.CyberCPLogFileWriter as logging
from loginSystem.views import loadLoginPage
import json
import subprocess
-from loginSystem.models import Administrator
import psutil
import shlex
import socket
+from plogical.acl import ACLManager
# Create your views here.
-
def serverStatusHome(request):
try:
userID = request.session['userID']
-
- admin = Administrator.objects.get(pk=userID)
-
- if admin.type == 3:
- return HttpResponse("You don't have enough priviliges to access this page.")
-
-
return render(request,'serverStatus/index.html')
except KeyError:
return redirect(loadLoginPage)
@@ -34,10 +26,12 @@ def litespeedStatus(request):
try:
userID = request.session['userID']
- admin = Administrator.objects.get(pk=userID)
+ currentACL = ACLManager.loadedACL(userID)
- if admin.type == 3:
- return HttpResponse("You don't have enough priviliges to access this page.")
+ if currentACL['admin'] == 1:
+ pass
+ else:
+ return ACLManager.loadError()
processList = ProcessUtilities.getLitespeedProcessNumber()
@@ -75,16 +69,16 @@ def litespeedStatus(request):
logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[litespeedStatus]")
return redirect(loadLoginPage)
-
-
def stopOrRestartLitespeed(request):
try:
userID = request.session['userID']
- admin = Administrator.objects.get(pk=userID)
+ currentACL = ACLManager.loadedACL(userID)
- if admin.type == 3:
- return HttpResponse("You don't have enough priviliges to access this page.")
+ if currentACL['admin'] == 1:
+ pass
+ else:
+ return ACLManager.loadErrorJson('reboot', 0)
data = json.loads(request.body)
@@ -108,17 +102,17 @@ def stopOrRestartLitespeed(request):
logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[stopOrRestartLitespeed]")
return HttpResponse("Not Logged in as admin")
-
-
def cyberCPMainLogFile(request):
try:
- val = request.session['userID']
+ userID = request.session['userID']
- admin = Administrator.objects.get(pk=val)
+ currentACL = ACLManager.loadedACL(userID)
- if admin.type == 3:
- return HttpResponse("You don't have enough privileges to access this page.")
+ if currentACL['admin'] == 1:
+ pass
+ else:
+ return ACLManager.loadError()
return render(request,'serverStatus/cybercpmainlogfile.html')
@@ -127,56 +121,45 @@ def cyberCPMainLogFile(request):
logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[cyberCPMainLogFile]")
return redirect(loadLoginPage)
-
def getFurtherDataFromLogFile(request):
try:
- val = request.session['userID']
- admin = Administrator.objects.get(pk=val)
-
- if admin.type == 1:
-
- fewLinesOfLogFile = logging.CyberCPLogFileWriter.readLastNFiles(50,logging.CyberCPLogFileWriter.fileName)
- fewLinesOfLogFile = str(fewLinesOfLogFile)
- status = {"logstatus": 1, "logsdata": fewLinesOfLogFile}
- final_json = json.dumps(status)
- return HttpResponse(final_json)
+ userID = request.session['userID']
+ currentACL = ACLManager.loadedACL(userID)
+ if currentACL['admin'] == 1:
+ pass
else:
- status = {"logstatus": 0,'error':"You don't have enough privilege to view logs."}
- final_json = json.dumps(status)
- return HttpResponse(final_json)
+ return ACLManager.loadErrorJson('logstatus', 0)
+
+ fewLinesOfLogFile = logging.CyberCPLogFileWriter.readLastNFiles(50, logging.CyberCPLogFileWriter.fileName)
+ fewLinesOfLogFile = str(fewLinesOfLogFile)
+ status = {"logstatus": 1, "logsdata": fewLinesOfLogFile}
+ final_json = json.dumps(status)
+ return HttpResponse(final_json)
except KeyError, msg:
status = {"logstatus":0,"error":"Could not fetch data from log file, please see CyberCP main log file through command line."}
logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[getFurtherDataFromLogFile]")
return HttpResponse("Not Logged in as admin")
-
def services(request):
try:
userID = request.session['userID']
+ currentACL = ACLManager.loadedACL(userID)
- admin = Administrator.objects.get(pk=userID)
-
- if admin.type == 3:
- return HttpResponse("You don't have enough priviliges to access this page.")
+ if currentACL['admin'] == 1:
+ pass
+ else:
+ return ACLManager.loadError()
return render(request, 'serverStatus/services.html')
except KeyError:
return redirect(loadLoginPage)
-
def servicesStatus(request):
try:
userID = request.session['userID']
- admin = Administrator.objects.get(pk=userID)
-
- if admin.type == 3:
- final = {'error': 1, "error_message": "Not enough privilege"}
- final_json = json.dumps(final)
- return HttpResponse(final_json)
-
lsStatus = []
sqlStatus = []
dnsStatus = []
@@ -257,17 +240,15 @@ def servicesStatus(request):
except KeyError:
return redirect(loadLoginPage)
-
def servicesAction(request):
try:
- val = request.session['userID']
+ userID = request.session['userID']
+ currentACL = ACLManager.loadedACL(userID)
- admin = Administrator.objects.get(pk=val)
-
- if admin.type == 3:
- final = {'serviceAction': 0, "error_message": "Not enough privileges."}
- final_json = json.dumps(final)
- return HttpResponse(final_json)
+ if currentACL['admin'] == 1:
+ pass
+ else:
+ return ACLManager.loadErrorJson('serviceAction', 0)
try:
if request.method == 'POST':
diff --git a/static/baseTemplate/custom-js/system-status.js b/static/baseTemplate/custom-js/system-status.js
index d4f56b8bc..5417bc1e5 100644
--- a/static/baseTemplate/custom-js/system-status.js
+++ b/static/baseTemplate/custom-js/system-status.js
@@ -70,16 +70,13 @@ app.controller('systemStatusInfo', function($scope,$http,$timeout) {
function ListInitialData(response) {
-
$scope.cpuUsage = response.data.cpuUsage;
$scope.ramUsage = response.data.ramUsage;
$scope.diskUsage = response.data.diskUsage;
}
- function cantLoadInitialData(response) {
- console.log("not good");
- }
+ function cantLoadInitialData(response) {}
//$timeout(getStuff, 2000);
@@ -103,52 +100,173 @@ app.controller('adminController', function($scope,$http,$timeout) {
function ListInitialData(response) {
- $scope.currentAdmin = response.data.user_name;
+ $scope.currentAdmin = response.data.adminName;
$scope.admin_type = response.data.admin_type;
-
$("#serverIPAddress").text(response.data.serverIPAddress);
- if (response.data.admin_type !== "Administrator")
- {
+ if (response.data.admin === 0) {
+ $('.serverACL').hide();
- if(response.data.admin_type !== "Reseller") {
- $("#normalUser").hide();
- $("#normalUserA").hide();
- $("#normalUserB").hide();
+
+ if(!Boolean(response.data.versionManagement)){
+ $('.versionManagement').hide();
+ }
+ // User Management
+ if(!Boolean(response.data.createNewUser)){
+ $('.createNewUser').hide();
+ }
+ if(!Boolean(response.data.resellerCenter)){
+ $('.resellerCenter').hide();
+ }
+ if(!Boolean(response.data.deleteUser)){
+ $('.deleteUser').hide();
+ }
+ if(!Boolean(response.data.changeUserACL)){
+ $('.changeUserACL').hide();
+ }
+ // Website Management
+ if(!Boolean(response.data.createWebsite)){
+ $('.createWebsite').hide();
+ }
+
+ if(!Boolean(response.data.modifyWebsite)){
+ $('.modifyWebsite').hide();
+ }
+
+ if(!Boolean(response.data.suspendWebsite)){
+ $('.suspendWebsite').hide();
+ }
+
+ if(!Boolean(response.data.deleteWebsite)){
+ $('.deleteWebsite').hide();
}
- $("#normalUserC").hide();
- $("#normalUserD").hide();
- $("#normalUserE").hide();
- $("#normalUserF").hide();
- $("#normalUserG").hide();
- $("#normalUserH").hide();
- $("#normalUserP").hide();
- $("#normalUserI").hide();
+ // Package Management
- $("#ssl").hide();
- $("#sslA").hide();
- $("#siteState").hide();
+ if(!Boolean(response.data.createPackage)){
+ $('.createPackage').hide();
+ }
- $("#restoreSite").hide();
- $("#backupDestinations").hide();
- $("#scheduleBackup").hide();
+ if(!Boolean(response.data.deletePackage)){
+ $('.deletePackage').hide();
+ }
+
+ if(!Boolean(response.data.modifyPackage)){
+ $('.modifyPackage').hide();
+ }
+
+ // Database Management
+
+ if(!Boolean(response.data.createDatabase)){
+ $('.createDatabase').hide();
+ }
+
+ if(!Boolean(response.data.deleteDatabase)){
+ $('.deleteDatabase').hide();
+ }
+
+ if(!Boolean(response.data.listDatabases)){
+ $('.listDatabases').hide();
+ }
+
+ // DNS Management
+
+ if(!Boolean(response.data.createNameServer)){
+ $('.createNameServer').hide();
+ }
+
+ if(!Boolean(response.data.createDNSZone)){
+ $('.createDNSZone').hide();
+ }
+
+ if(!Boolean(response.data.deleteZone)){
+ $('.addDeleteRecords').hide();
+ }
+
+ if(!Boolean(response.data.addDeleteRecords)){
+ $('.deleteDatabase').hide();
+ }
+
+ // Email Management
+
+ if(!Boolean(response.data.createEmail)){
+ $('.createEmail').hide();
+ }
+
+ if(!Boolean(response.data.deleteEmail)){
+ $('.deleteEmail').hide();
+ }
+
+ if(!Boolean(response.data.emailForwarding)){
+ $('.emailForwarding').hide();
+ }
+
+ if(!Boolean(response.data.changeEmailPassword)){
+ $('.changeEmailPassword').hide();
+ }
+
+ if(!Boolean(response.data.dkimManager)){
+ $('.dkimManager').hide();
+ }
+
+
+ // FTP Management
+
+ if(!Boolean(response.data.createFTPAccount)){
+ $('.createFTPAccount').hide();
+ }
+
+ if(!Boolean(response.data.deleteFTPAccount)){
+ $('.deleteFTPAccount').hide();
+ }
+
+ if(!Boolean(response.data.listFTPAccounts)){
+ $('.listFTPAccounts').hide();
+ }
+
+ // Backup Management
+
+ if(!Boolean(response.data.createBackup)){
+ $('.createBackup').hide();
+ }
+
+ if(!Boolean(response.data.restoreBackup)){
+ $('.restoreBackup').hide();
+ }
+
+ if(!Boolean(response.data.addDeleteDestinations)){
+ $('.addDeleteDestinations').hide();
+ }
+
+ if(!Boolean(response.data.scheDuleBackups)){
+ $('.scheDuleBackups').hide();
+ }
+
+ if(!Boolean(response.data.remoteBackups)){
+ $('.remoteBackups').hide();
+ }
+
+
+ // SSL Management
+
+ if(!Boolean(response.data.manageSSL)){
+ $('.manageSSL').hide();
+ }
+
+ if(!Boolean(response.data.hostnameSSL)){
+ $('.hostnameSSL').hide();
+ }
+
+ if(!Boolean(response.data.mailServerSSL)){
+ $('.mailServerSSL').hide();
+ }
- $("#remoteBackups").hide();
- $("#packageHome").hide();
- $("#packageSub").hide();
- $("#createWebsite").hide();
- $("#modifyWebSite").hide();
- $("#deleteWebsite").hide();
- $("#versionManagement").hide();
}
}
- function cantLoadInitialData(response) {
- console.log("not good");
- }
+ function cantLoadInitialData(response) {}
});
diff --git a/static/dns/dns.js b/static/dns/dns.js
index bcd6e5ec9..61d498f84 100644
--- a/static/dns/dns.js
+++ b/static/dns/dns.js
@@ -288,8 +288,7 @@ app.controller('addModifyDNSRecords', function($scope,$http) {
data.priority = $scope.priority;
data.ttl = $scope.ttl;
data.recordType = type;
- }
- else if(type === "CAA"){
+ }else if(type === "CAA"){
data.selectedZone = $scope.selectedZone;
data.recordName = $scope.recordName;
data.recordContentCAA = $scope.recordContentCAA;
diff --git a/static/firewall/firewall.js b/static/firewall/firewall.js
index fa10a43b0..062e43dcf 100644
--- a/static/firewall/firewall.js
+++ b/static/firewall/firewall.js
@@ -985,15 +985,10 @@ app.controller('modSec', function($scope, $http, $timeout, $window) {
///// ModSec configs
- var modsecurity_status = false;
var SecAuditEngine = false;
var SecRuleEngine = false;
- $('#modsecurity_status').change(function() {
- modsecurity_status = $(this).prop('checked');
- });
-
$('#SecAuditEngine').change(function() {
SecAuditEngine = $(this).prop('checked');
});
@@ -1008,7 +1003,6 @@ app.controller('modSec', function($scope, $http, $timeout, $window) {
$scope.modsecLoading = false;
- $('#modsecurity_status').bootstrapToggle('off');
$('#SecAuditEngine').bootstrapToggle('off');
$('#SecRuleEngine').bootstrapToggle('off');
@@ -1037,10 +1031,6 @@ app.controller('modSec', function($scope, $http, $timeout, $window) {
if(response.data.installed === 1) {
-
- if (response.data.modsecurity === 1) {
- $('#modsecurity_status').bootstrapToggle('on');
- }
if (response.data.SecAuditEngine === 1) {
$('#SecAuditEngine').bootstrapToggle('on');
}
@@ -1083,13 +1073,12 @@ app.controller('modSec', function($scope, $http, $timeout, $window) {
url = "/firewall/saveModSecConfigurations";
var data = {
- modsecurity_status:modsecurity_status,
SecAuditEngine:SecAuditEngine,
SecRuleEngine:SecRuleEngine,
SecDebugLogLevel:$scope.SecDebugLogLevel,
SecAuditLogParts:$scope.SecAuditLogParts,
SecAuditLogRelevantStatus:$scope.SecAuditLogRelevantStatus,
- SecAuditLogType:$scope.SecAuditLogType,
+ SecAuditLogType:$scope.SecAuditLogType
};
var config = {
@@ -1494,8 +1483,6 @@ app.controller('modSecRulesPack', function($scope, $http, $timeout, $window) {
$scope.modsecLoading = false;
-
-
url = "/firewall/enableDisableRuleFile";
var data = {
@@ -1529,6 +1516,12 @@ app.controller('modSecRulesPack', function($scope, $http, $timeout, $window) {
$scope.installationFailed = true;
$scope.installationSuccess = false;
+ new PNotify({
+ title: 'Success!',
+ text: 'Changes successfully applied.',
+ type:'success'
+ });
+
$scope.fetchRulesFile(packName);
}else{
@@ -1541,6 +1534,12 @@ app.controller('modSecRulesPack', function($scope, $http, $timeout, $window) {
$scope.installationFailed = false;
$scope.installationSuccess = true;
+ new PNotify({
+ title: 'Error!',
+ text: response.data.error_message,
+ type:'error'
+ });
+
$scope.errorMessage = response.data.error_message;
}
@@ -1554,6 +1553,12 @@ app.controller('modSecRulesPack', function($scope, $http, $timeout, $window) {
$scope.couldNotConnect = false;
$scope.installationFailed = true;
$scope.installationSuccess = true;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
}
}
diff --git a/static/userManagment/userManagment.js b/static/userManagment/userManagment.js
index 41b45d219..5e4d0f2f9 100644
--- a/static/userManagment/userManagment.js
+++ b/static/userManagment/userManagment.js
@@ -15,24 +15,6 @@ app.controller('createUserCtr', function($scope,$http) {
$scope.userCreationLoading = true;
$scope.combinedLength = true;
-
- $scope.showLimitsBox = function(){
-
- if($scope.accountType == "Normal User"){
- $scope.webLimits = false;
- $scope.acctsLimit = true;
- }
- else if($scope.accountType == "Reseller"){
- $scope.webLimits = false;
- $scope.acctsLimit = false;
- }
- else{
- $scope.webLimits = true;
- $scope.acctsLimit = true;
- }
-
- }
-
$scope.createUserFunc = function(){
$scope.webLimits = false;
@@ -46,20 +28,11 @@ app.controller('createUserCtr', function($scope,$http) {
var firstName = $scope.firstName;
var lastName = $scope.lastName;
var email = $scope.email;
- var accountType = $scope.accountType;
- var userAccountsLimit = $scope.userAccountsLimit;
- var websitesLimit = $scope.websitesLimit;
+ var selectedACL = $scope.selectedACL;
+ var websitesLimits = $scope.websitesLimits;
var userName = $scope.userName;
var password = $scope.password;
- if ((firstName.length + lastName.length)>=20){
- $scope.combinedLength = false;
- $scope.userCreationLoading = true;
- return 0;
- }
-
-
-
var url = "/users/submitUserCreation";
@@ -67,14 +40,10 @@ app.controller('createUserCtr', function($scope,$http) {
firstName:firstName,
lastName:lastName,
email:email,
-
- accountType:accountType,
- userAccountsLimit:userAccountsLimit,
- websitesLimit:websitesLimit,
-
-
+ selectedACL:selectedACL,
+ websitesLimit:websitesLimits,
userName:userName,
- password:password,
+ password:password
};
var config = {
@@ -177,7 +146,7 @@ app.controller('modifyUser', function($scope,$http) {
var url = "/users/fetchUserDetails";
var data = {
- accountUsername:accountUsername,
+ accountUsername:accountUsername
};
var config = {
@@ -192,18 +161,15 @@ app.controller('modifyUser', function($scope,$http) {
function ListInitialDatas(response) {
- if(response.data.fetchStatus == 1){
+ if(response.data.fetchStatus === 1){
$scope.acctDetailsFetched = false;
var userDetails = response.data.userDetails;
- $scope.currentAccountType = userDetails.accountType;
$scope.firstName = userDetails.firstName;
$scope.lastName = userDetails.lastName;
$scope.email = userDetails.email;
- $scope.userAccountsLimit = userDetails.userAccountsLimit;
- $scope.websitesLimit = userDetails.websitesLimit;
$scope.userModificationLoading = true;
$scope.acctDetailsFetched = false;
@@ -214,18 +180,6 @@ app.controller('modifyUser', function($scope,$http) {
$scope.detailsFetched = false;
$scope.userAccountsLimit = true;
$scope.websitesLimit = true;
-
- if(userDetails.accountType=="Administrator"){
- $scope.accountTypeView = true;
- }
- else{
- $scope.accountTypeView = false;
- }
-
-
-
-
-
}
else
@@ -291,8 +245,6 @@ app.controller('modifyUser', function($scope,$http) {
var lastName = $scope.lastName;
var email = $scope.email;
- var userAccountsLimit = $scope.userAccountsLimitValue;
- var websitesLimit = $scope.websitesLimitValue;
var password = $scope.password;
@@ -301,13 +253,10 @@ app.controller('modifyUser', function($scope,$http) {
var data = {
accountUsername:accountUsername,
- accountType:accountType,
firstName:firstName,
lastName:lastName,
email:email,
- userAccountsLimit:userAccountsLimit,
- websitesLimit:websitesLimit,
- password:password,
+ password:password
};
var config = {
@@ -498,4 +447,955 @@ app.controller('deleteUser', function($scope,$http) {
});
-/* Java script code to delete user account ends here */
\ No newline at end of file
+/* Java script code to delete user account ends here */
+
+
+/* Java script code to create acl */
+app.controller('createACLCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+
+
+
+ $scope.createACLFunc = function(){
+
+ $scope.aclLoading = false;
+
+ var url = "/users/createACLFunc";
+
+ var data = {
+
+ aclName : $scope.aclName,
+ makeAdmin : $scope.makeAdmin = true,
+
+ //
+ versionManagement : $scope.versionManagement,
+
+ // User Management
+
+ createNewUser : $scope.createNewUser,
+ resellerCenter : $scope.resellerCenter,
+ deleteUser : $scope.deleteUser,
+ changeUserACL : $scope.changeUserACL,
+
+ // Website Management
+
+ createWebsite : $scope.createWebsite,
+ modifyWebsite : $scope.modifyWebsite,
+ suspendWebsite : $scope.suspendWebsite,
+ deleteWebsite : $scope.deleteWebsite,
+
+ // Package Management
+
+ createPackage : $scope.createPackage,
+ deletePackage : $scope.deletePackage,
+ modifyPackage : $scope.modifyPackage,
+
+ // Database Management
+
+ createDatabase : $scope.createDatabase,
+ deleteDatabase : $scope.deleteDatabase,
+ listDatabases : $scope.listDatabases,
+
+ // DNS Management
+
+ createNameServer : $scope.createNameServer,
+ createDNSZone : $scope.createDNSZone,
+ deleteZone : $scope.deleteZone,
+ addDeleteRecords : $scope.addDeleteRecords,
+
+ // Email Management
+
+ createEmail : $scope.createEmail,
+ deleteEmail : $scope.deleteEmail,
+ emailForwarding : $scope.emailForwarding,
+ changeEmailPassword : $scope.changeEmailPassword,
+ dkimManager : $scope.dkimManager,
+
+ // FTP Management
+
+ createFTPAccount : $scope.createFTPAccount,
+ deleteFTPAccount : $scope.deleteFTPAccount,
+ listFTPAccounts : $scope.listFTPAccounts,
+
+ // Backup Management
+
+ createBackup : $scope.createBackup,
+ restoreBackup : $scope.restoreBackup,
+ addDeleteDestinations : $scope.addDeleteDestinations,
+ scheDuleBackups : $scope.scheDuleBackups,
+ remoteBackups : $scope.remoteBackups,
+
+ // SSL Management
+
+ manageSSL : $scope.manageSSL,
+ hostnameSSL : $scope.hostnameSSL,
+ mailServerSSL : $scope.mailServerSSL
+
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully created.',
+ type:'success'
+ });
+ }
+
+ else
+ {
+
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+
+
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+
+
+
+
+ };
+
+ $scope.adminHook = function () {
+
+ if($scope.makeAdmin === true){
+
+ $scope.makeAdmin = true;
+
+ //
+
+ $scope.versionManagement = true;
+
+ // User Management
+
+ $scope.createNewUser = true;
+ $scope.resellerCenter = true;
+ $scope.deleteUser = true;
+ $scope.changeUserACL = true;
+
+ // Website Management
+
+ $scope.createWebsite = true;
+ $scope.modifyWebsite = true;
+ $scope.suspendWebsite = true;
+ $scope.deleteWebsite = true;
+
+ // Package Management
+
+ $scope.createPackage = true;
+ $scope.deletePackage = true;
+ $scope.modifyPackage = true;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = true;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = true;
+ $scope.addDeleteDestinations = true;
+ $scope.scheDuleBackups = true;
+ $scope.remoteBackups = true;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = true;
+ $scope.mailServerSSL = true;
+
+ }
+ else{
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+ }
+
+ };
+
+
+});
+/* Java script code to create acl ends here */
+
+
+/* Java script code to delete acl */
+app.controller('deleteACTCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+ $scope.deleteACLButton = true;
+
+ $scope.deleteACLFunc = function(){
+
+ $scope.deleteACLButton = false;
+
+ };
+
+ $scope.deleteACLFinal = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/deleteACLFunc";
+
+ var data = {
+ aclToBeDeleted: $scope.aclToBeDeleted
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully deleted.',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code to delete acl */
+
+
+/* Java script code to create acl */
+app.controller('modifyACLCtrl', function($scope,$http) {
+
+ $scope.aclLoading = true;
+ $scope.aclDetails = true;
+
+ $scope.fetchDetails = function () {
+
+ $scope.aclLoading = false;
+
+ var url = "/users/fetchACLDetails";
+
+ var data = {
+ aclToModify : $scope.aclToModify
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'Current settings successfully fetched',
+ type:'success'
+ });
+
+ $scope.aclDetails = false;
+
+ $scope.makeAdmin = Boolean(response.data.adminStatus);
+
+ //
+
+ $scope.versionManagement = Boolean(response.data.versionManagement);
+
+ // User Management
+
+ $scope.createNewUser = Boolean(response.data.createNewUser);
+ $scope.resellerCenter = Boolean(response.data.resellerCenter);
+ $scope.deleteUser = Boolean(response.data.deleteUser);
+ $scope.changeUserACL = Boolean(response.data.changeUserACL);
+
+ // Website Management
+
+ $scope.createWebsite = Boolean(response.data.createWebsite);
+ $scope.modifyWebsite = Boolean(response.data.modifyWebsite);
+ $scope.suspendWebsite = Boolean(response.data.suspendWebsite);
+ $scope.deleteWebsite = Boolean(response.data.deleteWebsite);
+
+ // Package Management
+
+ $scope.createPackage = Boolean(response.data.createPackage);
+ $scope.deletePackage = Boolean(response.data.deletePackage);
+ $scope.modifyPackage = Boolean(response.data.modifyPackage);
+
+ // Database Management
+
+ $scope.createDatabase = Boolean(response.data.createDatabase);
+ $scope.deleteDatabase = Boolean(response.data.deleteDatabase);
+ $scope.listDatabases = Boolean(response.data.listDatabases);
+
+ // DNS Management
+
+ $scope.createNameServer = Boolean(response.data.createNameServer);
+ $scope.createDNSZone = Boolean(response.data.createDNSZone);
+ $scope.deleteZone = Boolean(response.data.deleteZone);
+ $scope.addDeleteRecords = Boolean(response.data.addDeleteRecords);
+
+ // Email Management
+
+ $scope.createEmail = Boolean(response.data.createEmail);
+ $scope.deleteEmail = Boolean(response.data.deleteEmail);
+ $scope.emailForwarding = Boolean(response.data.emailForwarding);
+ $scope.changeEmailPassword = Boolean(response.data.changeEmailPassword);
+ $scope.dkimManager = Boolean(response.data.dkimManager);
+
+ // FTP Management
+
+ $scope.createFTPAccount = Boolean(response.data.createFTPAccount);
+ $scope.deleteFTPAccount = Boolean(response.data.deleteFTPAccount);
+ $scope.listFTPAccounts = Boolean(response.data.listFTPAccounts);
+
+ // Backup Management
+
+ $scope.createBackup = Boolean(response.data.createBackup);
+ $scope.restoreBackup = Boolean(response.data.restoreBackup);
+ $scope.addDeleteDestinations = Boolean(response.data.addDeleteDestinations);
+ $scope.scheDuleBackups = Boolean(response.data.scheDuleBackups);
+ $scope.remoteBackups = Boolean(response.data.remoteBackups);
+
+ // SSL Management
+
+ $scope.manageSSL = Boolean(response.data.manageSSL);
+ $scope.hostnameSSL = Boolean(response.data.hostnameSSL);
+ $scope.mailServerSSL = Boolean(response.data.mailServerSSL);
+
+ }
+ else
+ {
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+ };
+
+ $scope.saveChanges = function(){
+
+ $scope.aclLoading = false;
+
+ var url = "/users/submitACLModifications";
+
+ var data = {
+ aclToModify : $scope.aclToModify,
+ adminStatus : $scope.makeAdmin,
+ //
+ versionManagement : $scope.versionManagement,
+
+ // User Management
+
+ createNewUser : $scope.createNewUser,
+ resellerCenter : $scope.resellerCenter,
+ deleteUser : $scope.deleteUser,
+ changeUserACL : $scope.changeUserACL,
+
+ // Website Management
+
+ createWebsite : $scope.createWebsite,
+ modifyWebsite : $scope.modifyWebsite,
+ suspendWebsite : $scope.suspendWebsite,
+ deleteWebsite : $scope.deleteWebsite,
+
+ // Package Management
+
+ createPackage : $scope.createPackage,
+ deletePackage : $scope.deletePackage,
+ modifyPackage : $scope.modifyPackage,
+
+ // Database Management
+
+ createDatabase : $scope.createDatabase,
+ deleteDatabase : $scope.deleteDatabase,
+ listDatabases : $scope.listDatabases,
+
+ // DNS Management
+
+ createNameServer : $scope.createNameServer,
+ createDNSZone : $scope.createDNSZone,
+ deleteZone : $scope.deleteZone,
+ addDeleteRecords : $scope.addDeleteRecords,
+
+ // Email Management
+
+ createEmail : $scope.createEmail,
+ deleteEmail : $scope.deleteEmail,
+ emailForwarding : $scope.emailForwarding,
+ changeEmailPassword : $scope.changeEmailPassword,
+ dkimManager : $scope.dkimManager,
+
+ // FTP Management
+
+ createFTPAccount : $scope.createFTPAccount,
+ deleteFTPAccount : $scope.deleteFTPAccount,
+ listFTPAccounts : $scope.listFTPAccounts,
+
+ // Backup Management
+
+ createBackup : $scope.createBackup,
+ restoreBackup : $scope.restoreBackup,
+ addDeleteDestinations : $scope.addDeleteDestinations,
+ scheDuleBackups : $scope.scheDuleBackups,
+ remoteBackups : $scope.remoteBackups,
+
+ // SSL Management
+
+ manageSSL : $scope.manageSSL,
+ hostnameSSL : $scope.hostnameSSL,
+ mailServerSSL : $scope.mailServerSSL
+
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully modified.',
+ type:'success'
+ });
+ }
+
+ else
+ {
+
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+
+
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+
+
+
+
+ };
+
+ $scope.adminHook = function () {
+
+ if($scope.makeAdmin === true){
+
+ $scope.makeAdmin = true;
+
+ //
+
+ $scope.versionManagement = true;
+
+ // User Management
+
+ $scope.createNewUser = true;
+ $scope.resellerCenter = true;
+ $scope.deleteUser = true;
+ $scope.changeUserACL = true;
+
+ // Website Management
+
+ $scope.createWebsite = true;
+ $scope.modifyWebsite = true;
+ $scope.suspendWebsite = true;
+ $scope.deleteWebsite = true;
+
+ // Package Management
+
+ $scope.createPackage = true;
+ $scope.deletePackage = true;
+ $scope.modifyPackage = true;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = true;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = true;
+ $scope.addDeleteDestinations = true;
+ $scope.scheDuleBackups = true;
+ $scope.remoteBackups = true;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = true;
+ $scope.mailServerSSL = true;
+
+ }
+ else{
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+ }
+
+ };
+
+
+
+
+});
+/* Java script code to create acl ends here */
+
+
+/* Java script code to change user acl */
+app.controller('changeUserACLCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.changeACLFunc = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/changeACLFunc";
+
+ var data = {
+ selectedUser: $scope.selectedUser,
+ selectedACL: $scope.selectedACL
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully changed.',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code to change user acl */
+
+/* Java script code for reseller center */
+app.controller('resellerCenterCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.saveResellerChanges = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/saveResellerChanges";
+
+ var data = {
+ userToBeModified: $scope.userToBeModified,
+ newOwner: $scope.newOwner,
+ websitesLimit: $scope.websitesLimit
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'Changes successfully applied!',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code for reseller center acl */
\ No newline at end of file
diff --git a/static/websiteFunctions/websiteFunctions.js b/static/websiteFunctions/websiteFunctions.js
index 5ddcd5a96..e5015e539 100644
--- a/static/websiteFunctions/websiteFunctions.js
+++ b/static/websiteFunctions/websiteFunctions.js
@@ -537,8 +537,6 @@ app.controller('modifyWebsitesController', function($scope,$http) {
});
-
-
/* Java script code to Modify Pacakge ends here */
@@ -723,7 +721,7 @@ app.controller('websitePages', function($scope, $http, $timeout, $window) {
function ListInitialDatas(response) {
- if(response.data.logstatus == 1){
+ if(response.data.logstatus === 1){
// notifications
@@ -839,7 +837,7 @@ app.controller('websitePages', function($scope, $http, $timeout, $window) {
function ListInitialDatas(response) {
- if(response.data.configstatus == 1){
+ if(response.data.configstatus === 1){
//Rewrite rules
@@ -956,7 +954,7 @@ app.controller('websitePages', function($scope, $http, $timeout, $window) {
function ListInitialDatas(response) {
- if(response.data.configstatus == 1){
+ if(response.data.configstatus === 1){
$scope.configurationsBox = false;
$scope.configsFetched = true;
@@ -1366,10 +1364,10 @@ app.controller('websitePages', function($scope, $http, $timeout, $window) {
var domain = $("#domainNamePage").text();
var path = $scope.installPath;
- var sitename = $scope.sitename
- var username = $scope.username
- var password = $scope.password
- var prefix = $scope.prefix
+ var sitename = $scope.sitename;
+ var username = $scope.username;
+ var password = $scope.password;
+ var prefix = $scope.prefix;
url = "/websites/installJoomla";
@@ -1480,7 +1478,7 @@ app.controller('websitePages', function($scope, $http, $timeout, $window) {
var data = {
virtualHost: virtualHost,
cert:cert,
- key:key,
+ key:key
};
var config = {
@@ -2377,9 +2375,8 @@ app.controller('suspendWebsiteControl', function($scope,$http) {
function ListInitialDatas(response) {
- console.log(response.data)
- if (response.data.websiteStatus == 1)
+ if (response.data.websiteStatus === 1)
{
if(state=="Suspend"){
@@ -3071,6 +3068,10 @@ app.controller('launchChild', function($scope,$http) {
$scope.fileManagerURL = "/filemanager/"+$("#domainNamePage").text();
$scope.previewUrl = "/preview/"+$("#childDomain").text()+"/";
+ $scope.wordPressInstallURL = "/websites/" + $("#childDomain").text() + "/wordpressInstall";
+ $scope.joomlaInstallURL = "/websites/" + $("#childDomain").text() + "/joomlaInstall";
+ $scope.setupGit = "/websites/" + $("#childDomain").text() + "/setupGit";
+ $scope.installPrestaURL = "/websites/" + $("#childDomain").text() + "/installPrestaShop";
var logType = 0;
$scope.pageNumber = 1;
@@ -3124,7 +3125,7 @@ app.controller('launchChild', function($scope,$http) {
function ListInitialDatas(response) {
- if(response.data.logstatus == 1){
+ if(response.data.logstatus === 1){
$scope.logFileLoading = true;
@@ -3180,11 +3181,11 @@ app.controller('launchChild', function($scope,$http) {
var errorPageNumber = $scope.errorPageNumber;
- if(type==3){
+ if(type === 3){
errorPageNumber = $scope.errorPageNumber+1;
$scope.errorPageNumber = errorPageNumber;
}
- else if(type==4){
+ else if(type === 4){
errorPageNumber = $scope.errorPageNumber-1;
$scope.errorPageNumber = errorPageNumber;
}
@@ -3225,7 +3226,7 @@ app.controller('launchChild', function($scope,$http) {
function ListInitialDatas(response) {
- if(response.data.logstatus == 1){
+ if(response.data.logstatus === 1){
// notifications
@@ -3805,7 +3806,7 @@ app.controller('launchChild', function($scope,$http) {
function ListInitialDatas(response) {
- if(response.data.sslStatus == 1){
+ if(response.data.sslStatus === 1){
$scope.sslSaved = false;
$scope.couldNotSaveSSL = true;
@@ -3931,7 +3932,7 @@ app.controller('launchChild', function($scope,$http) {
}
- }
+ };
diff --git a/userManagment/static/userManagment/userManagment.js b/userManagment/static/userManagment/userManagment.js
index 41b45d219..5e4d0f2f9 100644
--- a/userManagment/static/userManagment/userManagment.js
+++ b/userManagment/static/userManagment/userManagment.js
@@ -15,24 +15,6 @@ app.controller('createUserCtr', function($scope,$http) {
$scope.userCreationLoading = true;
$scope.combinedLength = true;
-
- $scope.showLimitsBox = function(){
-
- if($scope.accountType == "Normal User"){
- $scope.webLimits = false;
- $scope.acctsLimit = true;
- }
- else if($scope.accountType == "Reseller"){
- $scope.webLimits = false;
- $scope.acctsLimit = false;
- }
- else{
- $scope.webLimits = true;
- $scope.acctsLimit = true;
- }
-
- }
-
$scope.createUserFunc = function(){
$scope.webLimits = false;
@@ -46,20 +28,11 @@ app.controller('createUserCtr', function($scope,$http) {
var firstName = $scope.firstName;
var lastName = $scope.lastName;
var email = $scope.email;
- var accountType = $scope.accountType;
- var userAccountsLimit = $scope.userAccountsLimit;
- var websitesLimit = $scope.websitesLimit;
+ var selectedACL = $scope.selectedACL;
+ var websitesLimits = $scope.websitesLimits;
var userName = $scope.userName;
var password = $scope.password;
- if ((firstName.length + lastName.length)>=20){
- $scope.combinedLength = false;
- $scope.userCreationLoading = true;
- return 0;
- }
-
-
-
var url = "/users/submitUserCreation";
@@ -67,14 +40,10 @@ app.controller('createUserCtr', function($scope,$http) {
firstName:firstName,
lastName:lastName,
email:email,
-
- accountType:accountType,
- userAccountsLimit:userAccountsLimit,
- websitesLimit:websitesLimit,
-
-
+ selectedACL:selectedACL,
+ websitesLimit:websitesLimits,
userName:userName,
- password:password,
+ password:password
};
var config = {
@@ -177,7 +146,7 @@ app.controller('modifyUser', function($scope,$http) {
var url = "/users/fetchUserDetails";
var data = {
- accountUsername:accountUsername,
+ accountUsername:accountUsername
};
var config = {
@@ -192,18 +161,15 @@ app.controller('modifyUser', function($scope,$http) {
function ListInitialDatas(response) {
- if(response.data.fetchStatus == 1){
+ if(response.data.fetchStatus === 1){
$scope.acctDetailsFetched = false;
var userDetails = response.data.userDetails;
- $scope.currentAccountType = userDetails.accountType;
$scope.firstName = userDetails.firstName;
$scope.lastName = userDetails.lastName;
$scope.email = userDetails.email;
- $scope.userAccountsLimit = userDetails.userAccountsLimit;
- $scope.websitesLimit = userDetails.websitesLimit;
$scope.userModificationLoading = true;
$scope.acctDetailsFetched = false;
@@ -214,18 +180,6 @@ app.controller('modifyUser', function($scope,$http) {
$scope.detailsFetched = false;
$scope.userAccountsLimit = true;
$scope.websitesLimit = true;
-
- if(userDetails.accountType=="Administrator"){
- $scope.accountTypeView = true;
- }
- else{
- $scope.accountTypeView = false;
- }
-
-
-
-
-
}
else
@@ -291,8 +245,6 @@ app.controller('modifyUser', function($scope,$http) {
var lastName = $scope.lastName;
var email = $scope.email;
- var userAccountsLimit = $scope.userAccountsLimitValue;
- var websitesLimit = $scope.websitesLimitValue;
var password = $scope.password;
@@ -301,13 +253,10 @@ app.controller('modifyUser', function($scope,$http) {
var data = {
accountUsername:accountUsername,
- accountType:accountType,
firstName:firstName,
lastName:lastName,
email:email,
- userAccountsLimit:userAccountsLimit,
- websitesLimit:websitesLimit,
- password:password,
+ password:password
};
var config = {
@@ -498,4 +447,955 @@ app.controller('deleteUser', function($scope,$http) {
});
-/* Java script code to delete user account ends here */
\ No newline at end of file
+/* Java script code to delete user account ends here */
+
+
+/* Java script code to create acl */
+app.controller('createACLCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+
+
+
+ $scope.createACLFunc = function(){
+
+ $scope.aclLoading = false;
+
+ var url = "/users/createACLFunc";
+
+ var data = {
+
+ aclName : $scope.aclName,
+ makeAdmin : $scope.makeAdmin = true,
+
+ //
+ versionManagement : $scope.versionManagement,
+
+ // User Management
+
+ createNewUser : $scope.createNewUser,
+ resellerCenter : $scope.resellerCenter,
+ deleteUser : $scope.deleteUser,
+ changeUserACL : $scope.changeUserACL,
+
+ // Website Management
+
+ createWebsite : $scope.createWebsite,
+ modifyWebsite : $scope.modifyWebsite,
+ suspendWebsite : $scope.suspendWebsite,
+ deleteWebsite : $scope.deleteWebsite,
+
+ // Package Management
+
+ createPackage : $scope.createPackage,
+ deletePackage : $scope.deletePackage,
+ modifyPackage : $scope.modifyPackage,
+
+ // Database Management
+
+ createDatabase : $scope.createDatabase,
+ deleteDatabase : $scope.deleteDatabase,
+ listDatabases : $scope.listDatabases,
+
+ // DNS Management
+
+ createNameServer : $scope.createNameServer,
+ createDNSZone : $scope.createDNSZone,
+ deleteZone : $scope.deleteZone,
+ addDeleteRecords : $scope.addDeleteRecords,
+
+ // Email Management
+
+ createEmail : $scope.createEmail,
+ deleteEmail : $scope.deleteEmail,
+ emailForwarding : $scope.emailForwarding,
+ changeEmailPassword : $scope.changeEmailPassword,
+ dkimManager : $scope.dkimManager,
+
+ // FTP Management
+
+ createFTPAccount : $scope.createFTPAccount,
+ deleteFTPAccount : $scope.deleteFTPAccount,
+ listFTPAccounts : $scope.listFTPAccounts,
+
+ // Backup Management
+
+ createBackup : $scope.createBackup,
+ restoreBackup : $scope.restoreBackup,
+ addDeleteDestinations : $scope.addDeleteDestinations,
+ scheDuleBackups : $scope.scheDuleBackups,
+ remoteBackups : $scope.remoteBackups,
+
+ // SSL Management
+
+ manageSSL : $scope.manageSSL,
+ hostnameSSL : $scope.hostnameSSL,
+ mailServerSSL : $scope.mailServerSSL
+
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully created.',
+ type:'success'
+ });
+ }
+
+ else
+ {
+
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+
+
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+
+
+
+
+ };
+
+ $scope.adminHook = function () {
+
+ if($scope.makeAdmin === true){
+
+ $scope.makeAdmin = true;
+
+ //
+
+ $scope.versionManagement = true;
+
+ // User Management
+
+ $scope.createNewUser = true;
+ $scope.resellerCenter = true;
+ $scope.deleteUser = true;
+ $scope.changeUserACL = true;
+
+ // Website Management
+
+ $scope.createWebsite = true;
+ $scope.modifyWebsite = true;
+ $scope.suspendWebsite = true;
+ $scope.deleteWebsite = true;
+
+ // Package Management
+
+ $scope.createPackage = true;
+ $scope.deletePackage = true;
+ $scope.modifyPackage = true;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = true;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = true;
+ $scope.addDeleteDestinations = true;
+ $scope.scheDuleBackups = true;
+ $scope.remoteBackups = true;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = true;
+ $scope.mailServerSSL = true;
+
+ }
+ else{
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+ }
+
+ };
+
+
+});
+/* Java script code to create acl ends here */
+
+
+/* Java script code to delete acl */
+app.controller('deleteACTCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+ $scope.deleteACLButton = true;
+
+ $scope.deleteACLFunc = function(){
+
+ $scope.deleteACLButton = false;
+
+ };
+
+ $scope.deleteACLFinal = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/deleteACLFunc";
+
+ var data = {
+ aclToBeDeleted: $scope.aclToBeDeleted
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully deleted.',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code to delete acl */
+
+
+/* Java script code to create acl */
+app.controller('modifyACLCtrl', function($scope,$http) {
+
+ $scope.aclLoading = true;
+ $scope.aclDetails = true;
+
+ $scope.fetchDetails = function () {
+
+ $scope.aclLoading = false;
+
+ var url = "/users/fetchACLDetails";
+
+ var data = {
+ aclToModify : $scope.aclToModify
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'Current settings successfully fetched',
+ type:'success'
+ });
+
+ $scope.aclDetails = false;
+
+ $scope.makeAdmin = Boolean(response.data.adminStatus);
+
+ //
+
+ $scope.versionManagement = Boolean(response.data.versionManagement);
+
+ // User Management
+
+ $scope.createNewUser = Boolean(response.data.createNewUser);
+ $scope.resellerCenter = Boolean(response.data.resellerCenter);
+ $scope.deleteUser = Boolean(response.data.deleteUser);
+ $scope.changeUserACL = Boolean(response.data.changeUserACL);
+
+ // Website Management
+
+ $scope.createWebsite = Boolean(response.data.createWebsite);
+ $scope.modifyWebsite = Boolean(response.data.modifyWebsite);
+ $scope.suspendWebsite = Boolean(response.data.suspendWebsite);
+ $scope.deleteWebsite = Boolean(response.data.deleteWebsite);
+
+ // Package Management
+
+ $scope.createPackage = Boolean(response.data.createPackage);
+ $scope.deletePackage = Boolean(response.data.deletePackage);
+ $scope.modifyPackage = Boolean(response.data.modifyPackage);
+
+ // Database Management
+
+ $scope.createDatabase = Boolean(response.data.createDatabase);
+ $scope.deleteDatabase = Boolean(response.data.deleteDatabase);
+ $scope.listDatabases = Boolean(response.data.listDatabases);
+
+ // DNS Management
+
+ $scope.createNameServer = Boolean(response.data.createNameServer);
+ $scope.createDNSZone = Boolean(response.data.createDNSZone);
+ $scope.deleteZone = Boolean(response.data.deleteZone);
+ $scope.addDeleteRecords = Boolean(response.data.addDeleteRecords);
+
+ // Email Management
+
+ $scope.createEmail = Boolean(response.data.createEmail);
+ $scope.deleteEmail = Boolean(response.data.deleteEmail);
+ $scope.emailForwarding = Boolean(response.data.emailForwarding);
+ $scope.changeEmailPassword = Boolean(response.data.changeEmailPassword);
+ $scope.dkimManager = Boolean(response.data.dkimManager);
+
+ // FTP Management
+
+ $scope.createFTPAccount = Boolean(response.data.createFTPAccount);
+ $scope.deleteFTPAccount = Boolean(response.data.deleteFTPAccount);
+ $scope.listFTPAccounts = Boolean(response.data.listFTPAccounts);
+
+ // Backup Management
+
+ $scope.createBackup = Boolean(response.data.createBackup);
+ $scope.restoreBackup = Boolean(response.data.restoreBackup);
+ $scope.addDeleteDestinations = Boolean(response.data.addDeleteDestinations);
+ $scope.scheDuleBackups = Boolean(response.data.scheDuleBackups);
+ $scope.remoteBackups = Boolean(response.data.remoteBackups);
+
+ // SSL Management
+
+ $scope.manageSSL = Boolean(response.data.manageSSL);
+ $scope.hostnameSSL = Boolean(response.data.hostnameSSL);
+ $scope.mailServerSSL = Boolean(response.data.mailServerSSL);
+
+ }
+ else
+ {
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+ };
+
+ $scope.saveChanges = function(){
+
+ $scope.aclLoading = false;
+
+ var url = "/users/submitACLModifications";
+
+ var data = {
+ aclToModify : $scope.aclToModify,
+ adminStatus : $scope.makeAdmin,
+ //
+ versionManagement : $scope.versionManagement,
+
+ // User Management
+
+ createNewUser : $scope.createNewUser,
+ resellerCenter : $scope.resellerCenter,
+ deleteUser : $scope.deleteUser,
+ changeUserACL : $scope.changeUserACL,
+
+ // Website Management
+
+ createWebsite : $scope.createWebsite,
+ modifyWebsite : $scope.modifyWebsite,
+ suspendWebsite : $scope.suspendWebsite,
+ deleteWebsite : $scope.deleteWebsite,
+
+ // Package Management
+
+ createPackage : $scope.createPackage,
+ deletePackage : $scope.deletePackage,
+ modifyPackage : $scope.modifyPackage,
+
+ // Database Management
+
+ createDatabase : $scope.createDatabase,
+ deleteDatabase : $scope.deleteDatabase,
+ listDatabases : $scope.listDatabases,
+
+ // DNS Management
+
+ createNameServer : $scope.createNameServer,
+ createDNSZone : $scope.createDNSZone,
+ deleteZone : $scope.deleteZone,
+ addDeleteRecords : $scope.addDeleteRecords,
+
+ // Email Management
+
+ createEmail : $scope.createEmail,
+ deleteEmail : $scope.deleteEmail,
+ emailForwarding : $scope.emailForwarding,
+ changeEmailPassword : $scope.changeEmailPassword,
+ dkimManager : $scope.dkimManager,
+
+ // FTP Management
+
+ createFTPAccount : $scope.createFTPAccount,
+ deleteFTPAccount : $scope.deleteFTPAccount,
+ listFTPAccounts : $scope.listFTPAccounts,
+
+ // Backup Management
+
+ createBackup : $scope.createBackup,
+ restoreBackup : $scope.restoreBackup,
+ addDeleteDestinations : $scope.addDeleteDestinations,
+ scheDuleBackups : $scope.scheDuleBackups,
+ remoteBackups : $scope.remoteBackups,
+
+ // SSL Management
+
+ manageSSL : $scope.manageSSL,
+ hostnameSSL : $scope.hostnameSSL,
+ mailServerSSL : $scope.mailServerSSL
+
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if(response.data.status === 1){
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully modified.',
+ type:'success'
+ });
+ }
+
+ else
+ {
+
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+
+
+ }
+
+ }
+ function cantLoadInitialDatas(response) {
+
+ $scope.aclLoading = false;
+
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+
+ }
+
+
+
+
+
+ };
+
+ $scope.adminHook = function () {
+
+ if($scope.makeAdmin === true){
+
+ $scope.makeAdmin = true;
+
+ //
+
+ $scope.versionManagement = true;
+
+ // User Management
+
+ $scope.createNewUser = true;
+ $scope.resellerCenter = true;
+ $scope.deleteUser = true;
+ $scope.changeUserACL = true;
+
+ // Website Management
+
+ $scope.createWebsite = true;
+ $scope.modifyWebsite = true;
+ $scope.suspendWebsite = true;
+ $scope.deleteWebsite = true;
+
+ // Package Management
+
+ $scope.createPackage = true;
+ $scope.deletePackage = true;
+ $scope.modifyPackage = true;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = true;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = true;
+ $scope.addDeleteDestinations = true;
+ $scope.scheDuleBackups = true;
+ $scope.remoteBackups = true;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = true;
+ $scope.mailServerSSL = true;
+
+ }
+ else{
+ $scope.makeAdmin = false;
+
+ //
+
+ $scope.versionManagement = false;
+
+ // User Management
+
+ $scope.createNewUser = false;
+ $scope.resellerCenter = false;
+ $scope.deleteUser = false;
+ $scope.changeUserACL = false;
+
+ // Website Management
+
+ $scope.createWebsite = false;
+ $scope.modifyWebsite = false;
+ $scope.suspendWebsite = false;
+ $scope.deleteWebsite = false;
+
+ // Package Management
+
+ $scope.createPackage = false;
+ $scope.deletePackage = false;
+ $scope.modifyPackage = false;
+
+ // Database Management
+
+ $scope.createDatabase = true;
+ $scope.deleteDatabase = true;
+ $scope.listDatabases = true;
+
+ // DNS Management
+
+ $scope.createNameServer = false;
+ $scope.createDNSZone = true;
+ $scope.deleteZone = true;
+ $scope.addDeleteRecords = true;
+
+ // Email Management
+
+ $scope.createEmail = true;
+ $scope.deleteEmail = true;
+ $scope.emailForwarding = true;
+ $scope.changeEmailPassword = true;
+ $scope.dkimManager = true;
+
+ // FTP Management
+
+ $scope.createFTPAccount = true;
+ $scope.deleteFTPAccount = true;
+ $scope.listFTPAccounts = true;
+
+ // Backup Management
+
+ $scope.createBackup = true;
+ $scope.restoreBackup = false;
+ $scope.addDeleteDestinations = false;
+ $scope.scheDuleBackups = false;
+ $scope.remoteBackups = false;
+
+ // SSL Management
+
+ $scope.manageSSL = true;
+ $scope.hostnameSSL = false;
+ $scope.mailServerSSL = false;
+ }
+
+ };
+
+
+
+
+});
+/* Java script code to create acl ends here */
+
+
+/* Java script code to change user acl */
+app.controller('changeUserACLCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.changeACLFunc = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/changeACLFunc";
+
+ var data = {
+ selectedUser: $scope.selectedUser,
+ selectedACL: $scope.selectedACL
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'ACL Successfully changed.',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code to change user acl */
+
+/* Java script code for reseller center */
+app.controller('resellerCenterCTRL', function($scope,$http) {
+
+ $scope.aclLoading = true;
+
+ $scope.saveResellerChanges = function(){
+
+ $scope.aclLoading = false;
+
+ url = "/users/saveResellerChanges";
+
+ var data = {
+ userToBeModified: $scope.userToBeModified,
+ newOwner: $scope.newOwner,
+ websitesLimit: $scope.websitesLimit
+ };
+
+ var config = {
+ headers : {
+ 'X-CSRFToken': getCookie('csrftoken')
+ }
+ };
+
+ $http.post(url, data,config).then(ListInitialDatas, cantLoadInitialDatas);
+
+
+ function ListInitialDatas(response) {
+ $scope.aclLoading = true;
+
+ if (response.data.status === 1)
+ {
+ new PNotify({
+ title: 'Success!',
+ text: 'Changes successfully applied!',
+ type:'success'
+ });
+
+ }
+ else{
+ new PNotify({
+ title: 'Error!',
+ text: response.data.errorMessage,
+ type:'error'
+ });
+ }
+
+
+ }
+ function cantLoadInitialDatas(response) {
+ $scope.aclLoading = true;
+ new PNotify({
+ title: 'Error!',
+ text: 'Could not connect to server, please refresh this page.',
+ type:'error'
+ });
+ }
+
+
+ };
+
+});
+/* Java script code for reseller center acl */
\ No newline at end of file
diff --git a/userManagment/templates/userManagment/changeUserACL.html b/userManagment/templates/userManagment/changeUserACL.html
new file mode 100644
index 000000000..b9e52954d
--- /dev/null
+++ b/userManagment/templates/userManagment/changeUserACL.html
@@ -0,0 +1,72 @@
+{% extends "baseTemplate/index.html" %}
+{% load i18n %}
+{% block title %}{% trans "Change User ACL - CyberPanel" %}{% endblock %}
+{% block content %}
+
+{% load static %}
+{% get_current_language as LANGUAGE_CODE %}
+
+
+
+
+
{% trans "Change User ACL" %}
+
{% trans "This page can be used to change ACL for CyberPanel users." %}
+
+
+
+
+
+ {% trans "Delete Website" %}
+
+
+
+
+
+
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/userManagment/templates/userManagment/createACL.html b/userManagment/templates/userManagment/createACL.html
new file mode 100644
index 000000000..f5857a3a6
--- /dev/null
+++ b/userManagment/templates/userManagment/createACL.html
@@ -0,0 +1,423 @@
+{% extends "baseTemplate/index.html" %}
+{% load i18n %}
+{% block title %}{% trans "Create new ACL - CyberPanel" %}{% endblock %}
+{% block content %}
+
+{% load static %}
+{% get_current_language as LANGUAGE_CODE %}
+
+
+
+
+
{% trans "Create New ACL" %}
+
{% trans "Create new Access Control defination, that specifies what CyberPanel users can do." %}
+
+
+
+
+
+ {% trans "ACL Details" %}
+
+
+
+
+
+
+
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/userManagment/templates/userManagment/createUser.html b/userManagment/templates/userManagment/createUser.html
index e07d371a1..af46230e8 100644
--- a/userManagment/templates/userManagment/createUser.html
+++ b/userManagment/templates/userManagment/createUser.html
@@ -54,57 +54,34 @@
-
-
-
- {% if adminType == 1 %}
-
+
- {% else %}
+
+
- {% endif %}
-
-
-
-
-
-
-
-
-
-
@@ -114,8 +91,6 @@
-
{% trans "Must contain one number and one special character." %}
-
diff --git a/userManagment/templates/userManagment/deleteACL.html b/userManagment/templates/userManagment/deleteACL.html
new file mode 100644
index 000000000..5c84e51f2
--- /dev/null
+++ b/userManagment/templates/userManagment/deleteACL.html
@@ -0,0 +1,68 @@
+{% extends "baseTemplate/index.html" %}
+{% load i18n %}
+{% block title %}{% trans "Delete ACL - CyberPanel" %}{% endblock %}
+{% block content %}
+
+{% load static %}
+{% get_current_language as LANGUAGE_CODE %}
+
+
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/userManagment/templates/userManagment/modifyACL.html b/userManagment/templates/userManagment/modifyACL.html
new file mode 100644
index 000000000..46aa703d5
--- /dev/null
+++ b/userManagment/templates/userManagment/modifyACL.html
@@ -0,0 +1,428 @@
+{% extends "baseTemplate/index.html" %}
+{% load i18n %}
+{% block title %}{% trans "Modify an ACL - CyberPanel" %}{% endblock %}
+{% block content %}
+
+{% load static %}
+{% get_current_language as LANGUAGE_CODE %}
+
+
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/userManagment/templates/userManagment/modifyUser.html b/userManagment/templates/userManagment/modifyUser.html
index 5e04891c7..6ac5757ee 100644
--- a/userManagment/templates/userManagment/modifyUser.html
+++ b/userManagment/templates/userManagment/modifyUser.html
@@ -22,17 +22,16 @@