mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-06 21:35:55 +01:00
Fix the Remote Backup Storage Issue
This commit is contained in:
186
managePHP/views.py
Normal file → Executable file
186
managePHP/views.py
Normal file → Executable file
@@ -1,26 +1,27 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
import sys
|
||||
|
||||
reload(sys)
|
||||
sys.setdefaultencoding("utf-8")
|
||||
from django.shortcuts import render,redirect
|
||||
from django.shortcuts import render, redirect
|
||||
from loginSystem.views import loadLoginPage
|
||||
from .models import PHP,installedPackages
|
||||
from .models import PHP, installedPackages, ApachePHP, installedPackagesApache
|
||||
from django.http import HttpResponse
|
||||
import json
|
||||
from plogical.phpUtilities import phpUtilities
|
||||
import os
|
||||
from plogical.installUtilities import installUtilities
|
||||
from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging
|
||||
import re
|
||||
from plogical.virtualHostUtilities import virtualHostUtilities
|
||||
import subprocess
|
||||
import shlex
|
||||
from random import randint
|
||||
from xml.etree import ElementTree
|
||||
from plogical.acl import ACLManager
|
||||
from plogical.processUtilities import ProcessUtilities
|
||||
from phpManager import PHPManager
|
||||
|
||||
|
||||
# Create your views here.
|
||||
|
||||
|
||||
@@ -34,10 +35,11 @@ def loadPHPHome(request):
|
||||
else:
|
||||
return ACLManager.loadError()
|
||||
|
||||
return render(request,'managePHP/index.html')
|
||||
return render(request, 'managePHP/index.html')
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
def installExtensions(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -50,7 +52,7 @@ def installExtensions(request):
|
||||
|
||||
if PHP.objects.count() == 0:
|
||||
for i in range(3, 7):
|
||||
php = "php"+str(5)+str(i)
|
||||
php = "php" + str(5) + str(i)
|
||||
newPHP = PHP(phpVers=php)
|
||||
newPHP.save()
|
||||
|
||||
@@ -59,8 +61,6 @@ def installExtensions(request):
|
||||
newPHP = PHP(phpVers="php71")
|
||||
newPHP.save()
|
||||
|
||||
|
||||
|
||||
### Gather php 53 information
|
||||
|
||||
php53 = PHP.objects.get(phpVers="php53")
|
||||
@@ -170,9 +170,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
|
||||
|
||||
phpExtension = installedPackages(phpVers=php53,
|
||||
extensionName="lsphp53-pecl-apc",
|
||||
description="APC caches and optimizes PHP intermediate code",
|
||||
@@ -243,7 +240,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
## non-active packages
|
||||
|
||||
|
||||
@@ -268,7 +264,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
phpExtension = installedPackages(phpVers=php53,
|
||||
extensionName="lsphp53-mysqlnd",
|
||||
description="A module for PHP applications that use MySQL databases",
|
||||
@@ -694,7 +689,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
phpExtension = installedPackages(phpVers=php55,
|
||||
extensionName="lsphp55-pgsql",
|
||||
description="A PostgreSQL database module for PHP",
|
||||
@@ -803,7 +797,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
phpExtension = installedPackages(phpVers=php55,
|
||||
extensionName="lsphp55-sqlite",
|
||||
description="Extension for the SQLite V2 Embeddable SQL Database Engine",
|
||||
@@ -875,7 +868,6 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
|
||||
phpExtension = installedPackages(phpVers=php56,
|
||||
extensionName="lsphp56-imap",
|
||||
description="A module for PHP applications that use IMAP",
|
||||
@@ -1145,7 +1137,7 @@ def installExtensions(request):
|
||||
php72Path = ''
|
||||
|
||||
if ProcessUtilities.decideDistro() == ProcessUtilities.centos:
|
||||
php72Path = os.path.join('/usr','local','CyberCP','managePHP','php72.xml')
|
||||
php72Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php72.xml')
|
||||
else:
|
||||
php72Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp72.xml')
|
||||
|
||||
@@ -1173,7 +1165,7 @@ def installExtensions(request):
|
||||
php73Path = ''
|
||||
|
||||
if ProcessUtilities.decideDistro() == ProcessUtilities.centos:
|
||||
php73Path = os.path.join('/usr','local','CyberCP','managePHP','php73.xml')
|
||||
php73Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php73.xml')
|
||||
else:
|
||||
php73Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp73.xml')
|
||||
|
||||
@@ -1193,10 +1185,11 @@ def installExtensions(request):
|
||||
|
||||
phpExtension.save()
|
||||
|
||||
return render(request,'managePHP/installExtensions.html', {'phps': PHPManager.findPHPVersions()})
|
||||
return render(request, 'managePHP/installExtensions.html', {'phps': PHPManager.findPHPVersions()})
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
def getExtensionsInformation(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1246,7 +1239,7 @@ def getExtensionsInformation(request):
|
||||
final_json = json.dumps({'fetchStatus': 1, 'error_message': "None", "data": json_data})
|
||||
return HttpResponse(final_json)
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'fetchStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
|
||||
@@ -1256,6 +1249,7 @@ def getExtensionsInformation(request):
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
def submitExtensionRequest(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1284,16 +1278,18 @@ def submitExtensionRequest(request):
|
||||
final_json = json.dumps({'extensionRequestStatus': 1, 'error_message': "None"})
|
||||
return HttpResponse(final_json)
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'extensionRequestStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
|
||||
return HttpResponse(final_json)
|
||||
except KeyError:
|
||||
final_dic = {'extensionRequestStatus': 0, 'error_message': "Not Logged In, please refresh the page or login again."}
|
||||
final_dic = {'extensionRequestStatus': 0,
|
||||
'error_message': "Not Logged In, please refresh the page or login again."}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
def getRequestStatus(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1409,12 +1405,137 @@ def getRequestStatus(request):
|
||||
|
||||
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'extensionRequestStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
except KeyError:
|
||||
final_dic = {'extensionRequestStatus': 0, 'error_message': "Not Logged In, please refresh the page or login again."}
|
||||
final_dic = {'extensionRequestStatus': 0,
|
||||
'error_message': "Not Logged In, please refresh the page or login again."}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
def getRequestStatusApache(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
currentACL = ACLManager.loadedACL(userID)
|
||||
|
||||
if currentACL['admin'] == 1:
|
||||
pass
|
||||
else:
|
||||
return ACLManager.loadErrorJson('extensionRequestStatus', 0)
|
||||
|
||||
try:
|
||||
if request.method == 'POST':
|
||||
data = json.loads(request.body)
|
||||
size = data['size']
|
||||
extensionName = data['extensionName']
|
||||
|
||||
checkCommand = ''
|
||||
|
||||
if ProcessUtilities.decideDistro() == ProcessUtilities.centos:
|
||||
checkCommand = 'yum list installed'
|
||||
checkCommand = shlex.split(checkCommand)
|
||||
else:
|
||||
checkCommand = 'dpkg --list'
|
||||
checkCommand = shlex.split(checkCommand)
|
||||
|
||||
command = "sudo cat " + phpUtilities.installLogPath
|
||||
requestStatus = ProcessUtilities.outputExecutioner(command)
|
||||
|
||||
requestStatusSize = len(requestStatus)
|
||||
|
||||
if requestStatus.find("PHP Extension Installed") > -1:
|
||||
|
||||
command = "sudo rm -f " + phpUtilities.installLogPath
|
||||
ProcessUtilities.executioner(command)
|
||||
|
||||
if ProcessUtilities.outputExecutioner(checkCommand).find(extensionName) > -1:
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 1
|
||||
ext.save()
|
||||
else:
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 0
|
||||
ext.save()
|
||||
|
||||
final_json = json.dumps({'status': 1, 'finished': 1, 'extensionRequestStatus': 1,
|
||||
'error_message': "None",
|
||||
'requestStatus': requestStatus,
|
||||
'size': requestStatusSize})
|
||||
return HttpResponse(final_json)
|
||||
elif requestStatus.find("Can not be installed") > -1:
|
||||
|
||||
command = "sudo rm -f " + phpUtilities.installLogPath
|
||||
ProcessUtilities.executioner(command)
|
||||
|
||||
if ProcessUtilities.outputExecutioner(checkCommand).find(extensionName) > -1:
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 1
|
||||
ext.save()
|
||||
|
||||
else:
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 0
|
||||
ext.save()
|
||||
|
||||
final_json = json.dumps({'status': 1, 'finished': 1, 'extensionRequestStatus': 1,
|
||||
'error_message': "None",
|
||||
'requestStatus': requestStatus,
|
||||
'size': requestStatusSize})
|
||||
return HttpResponse(final_json)
|
||||
elif requestStatus.find("Can not un-install Extension") > -1:
|
||||
|
||||
command = "sudo rm -f " + phpUtilities.installLogPath
|
||||
ProcessUtilities.executioner(command)
|
||||
|
||||
if ProcessUtilities.outputExecutioner(checkCommand).find(extensionName) > -1:
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 1
|
||||
ext.save()
|
||||
|
||||
else:
|
||||
ext = installedPackages.objects.get(extensionName=extensionName)
|
||||
ext.status = 0
|
||||
ext.save()
|
||||
|
||||
final_json = json.dumps({'status': 1, 'finished': 1, 'extensionRequestStatus': 1,
|
||||
'error_message': "None",
|
||||
'requestStatus': requestStatus,
|
||||
'size': requestStatusSize})
|
||||
return HttpResponse(final_json)
|
||||
elif requestStatus.find("PHP Extension Removed") > -1:
|
||||
|
||||
command = "sudo rm -f " + phpUtilities.installLogPath
|
||||
ProcessUtilities.executioner(command)
|
||||
|
||||
ext = installedPackagesApache.objects.get(extensionName=extensionName)
|
||||
ext.status = 0
|
||||
ext.save()
|
||||
|
||||
final_json = json.dumps({'status': 1, 'finished': 1, 'extensionRequestStatus': 1,
|
||||
'error_message': "None",
|
||||
'requestStatus': requestStatus,
|
||||
'size': requestStatusSize})
|
||||
return HttpResponse(final_json)
|
||||
else:
|
||||
final_json = json.dumps({'status': 1, 'finished': 0, 'extensionRequestStatus': 1,
|
||||
'error_message': "None",
|
||||
'requestStatus': requestStatus,
|
||||
'size': requestStatusSize})
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
|
||||
except BaseException, msg:
|
||||
logging.writeToFile(str(msg) + ' [getRequestStatusApache]')
|
||||
final_dic = {'status': 0, 'extensionRequestStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
except KeyError, msg:
|
||||
logging.writeToFile(str(msg) + ' [getRequestStatusApache]')
|
||||
final_dic = {'status': 0, 'extensionRequestStatus': 0,
|
||||
'error_message': "Not Logged In, please refresh the page or login again."}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
@@ -1428,10 +1549,11 @@ def editPHPConfigs(request):
|
||||
else:
|
||||
return ACLManager.loadError()
|
||||
|
||||
return render(request,'managePHP/editPHPConfig.html', {'phps': PHPManager.findPHPVersions()})
|
||||
return render(request, 'managePHP/editPHPConfig.html', {'phps': PHPManager.findPHPVersions()})
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
def getCurrentPHPConfig(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1509,17 +1631,17 @@ def getCurrentPHPConfig(request):
|
||||
|
||||
return HttpResponse(final_json)
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'fetchStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
return render(request,'managePHP/editPHPConfig.html')
|
||||
return render(request, 'managePHP/editPHPConfig.html')
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
def savePHPConfigBasic(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1582,13 +1704,14 @@ def savePHPConfigBasic(request):
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'saveStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
#### Get Advance PHP Configs
|
||||
|
||||
def getCurrentAdvancedPHPConfig(request):
|
||||
@@ -1625,13 +1748,14 @@ def getCurrentAdvancedPHPConfig(request):
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
except BaseException,msg:
|
||||
except BaseException, msg:
|
||||
final_dic = {'fetchStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
except KeyError:
|
||||
return redirect(loadLoginPage)
|
||||
|
||||
|
||||
def savePHPConfigAdvance(request):
|
||||
try:
|
||||
userID = request.session['userID']
|
||||
@@ -1685,4 +1809,4 @@ def savePHPConfigAdvance(request):
|
||||
|
||||
except KeyError, msg:
|
||||
logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[saveConfigsToFile]")
|
||||
return HttpResponse("Not Logged in as admin")
|
||||
return HttpResponse("Not Logged in as admin")
|
||||
|
||||
Reference in New Issue
Block a user