mysql changes

This commit is contained in:
Hassan Hashmi
2023-12-18 12:45:28 +05:00
parent c8da443334
commit f0d3bacb7b
13 changed files with 686 additions and 90 deletions

View File

@@ -2,8 +2,11 @@
from django.shortcuts import redirect, HttpResponse
from cloudAPI.cloudManager import CloudManager
from loginSystem.views import loadLoginPage
from .databaseManager import DatabaseManager
from .mysqlOptimizer import MySQLOptimizer
from .pluginManager import pluginManager
import json
from plogical.processUtilities import ProcessUtilities
@@ -14,6 +17,8 @@ from plogical import randomPassword
from cryptography.fernet import Fernet
from plogical.mysqlUtilities import mysqlUtilities
from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging
# Create your views here.
def loadDatabaseHome(request):
@@ -24,6 +29,7 @@ def loadDatabaseHome(request):
except KeyError:
return redirect(loadLoginPage)
def createDatabase(request):
try:
result = pluginManager.preCreateDatabase(request)
@@ -39,10 +45,11 @@ def createDatabase(request):
return result
return coreResult
except KeyError:
return redirect(loadLoginPage)
def submitDBCreation(request):
try:
userID = request.session['userID']
@@ -63,6 +70,7 @@ def submitDBCreation(request):
except KeyError:
return redirect(loadLoginPage)
def deleteDatabase(request):
try:
userID = request.session['userID']
@@ -71,6 +79,7 @@ def deleteDatabase(request):
except KeyError:
return redirect(loadLoginPage)
def fetchDatabases(request):
try:
userID = request.session['userID']
@@ -79,6 +88,7 @@ def fetchDatabases(request):
except KeyError:
return redirect(loadLoginPage)
def submitDatabaseDeletion(request):
try:
userID = request.session['userID']
@@ -97,6 +107,7 @@ def submitDatabaseDeletion(request):
except KeyError:
return redirect(loadLoginPage)
def listDBs(request):
try:
userID = request.session['userID']
@@ -105,6 +116,7 @@ def listDBs(request):
except KeyError:
return redirect(loadLoginPage)
def changePassword(request):
try:
userID = request.session['userID']
@@ -124,6 +136,7 @@ def changePassword(request):
except KeyError:
return redirect(loadLoginPage)
def remoteAccess(request):
try:
userID = request.session['userID']
@@ -135,6 +148,7 @@ def remoteAccess(request):
except KeyError:
return redirect(loadLoginPage)
def allowRemoteIP(request):
try:
userID = request.session['userID']
@@ -146,6 +160,7 @@ def allowRemoteIP(request):
except KeyError:
return redirect(loadLoginPage)
def phpMyAdmin(request):
try:
userID = request.session['userID']
@@ -154,12 +169,12 @@ def phpMyAdmin(request):
except KeyError:
return redirect(loadLoginPage)
def generateAccess(request):
try:
userID = request.session['userID']
admin = Administrator.objects.get(id = userID)
admin = Administrator.objects.get(id=userID)
currentACL = ACLManager.loadedACL(userID)
## if user ACL is admin login as root
@@ -181,13 +196,12 @@ def generateAccess(request):
password = randomPassword.generate_pass()
token = randomPassword.generate_pass()
GlobalUserDB(username=admin.userName, password=password,token=token).save()
GlobalUserDB(username=admin.userName, password=password, token=token).save()
data_ret = {'status': 1, 'token': token, 'username': admin.userName}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
keySavePath = '/home/cyberpanel/phpmyadmin_%s' % (admin.userName)
try:
GlobalUserDB.objects.get(username=admin.userName).delete()
@@ -237,18 +251,17 @@ def generateAccess(request):
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
def fetchDetailsPHPMYAdmin(request):
try:
userID = request.session['userID']
admin = Administrator.objects.get(id = userID)
admin = Administrator.objects.get(id=userID)
currentACL = ACLManager.loadedACL(userID)
token = request.GET.get('token')
username = request.GET.get('username')
if username != admin.userName:
return redirect(loadLoginPage)
@@ -268,7 +281,7 @@ def fetchDetailsPHPMYAdmin(request):
password = jsonData['mysqlpassword']
returnURL = '/phpmyadmin/phpmyadminsignin.php?username=%s&password=%s' % (
mysqluser, password)
mysqluser, password)
return redirect(returnURL)
except BaseException:
@@ -302,4 +315,87 @@ def fetchDetailsPHPMYAdmin(request):
except BaseException as msg:
data_ret = {'status': 0, 'createDBStatus': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
return HttpResponse(json_data)
def MySQLManager(request):
try:
userID = request.session['userID']
dm = DatabaseManager()
return dm.MySQLManager(request, userID)
except KeyError:
return redirect(loadLoginPage)
def OptimizeMySQL(request):
try:
userID = request.session['userID']
dm = DatabaseManager()
return dm.OptimizeMySQL(request, userID)
except KeyError:
return redirect(loadLoginPage)
def getMysqlstatus(request):
try:
userID = request.session['userID']
finalData = mysqlUtilities.showStatus()
finalData = json.dumps(finalData)
return HttpResponse(finalData)
except KeyError:
return redirect(loadLoginPage)
def restartMySQL(request):
try:
userID = request.session['userID']
finalData = mysqlUtilities.restartMySQL()
data = {}
data['status'] = finalData[0]
data['error_message'] = finalData[1]
json_data = json.dumps(data)
return HttpResponse(json_data)
except KeyError:
return redirect(loadLoginPage)
def generateRecommendations(request):
try:
userID = request.session['userID']
data = json.loads(request.body)
detectedRam = data['detectedRam']
data = {}
data['status'] = 1
data['generatedConf'] = MySQLOptimizer.generateRecommendations(detectedRam)
final_json = json.dumps(data)
return HttpResponse(final_json)
except KeyError:
return redirect(loadLoginPage)
def applyMySQLChanges(request):
try:
userID = request.session['userID']
data = json.loads(request.body)
logging.writeToFile("=-------------------------------------------")
finalData = mysqlUtilities.applyMySQLChanges(data)
data = {}
data['status'] = finalData[0]
data['error_message'] = finalData[1]
final_json = json.dumps(data)
return HttpResponse(final_json)
except KeyError:
return redirect(loadLoginPage)