mirror of
				https://github.com/usmannasir/cyberpanel.git
				synced 2025-11-03 20:05:58 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			1974 lines
		
	
	
		
			86 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			1974 lines
		
	
	
		
			86 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
# -*- coding: utf-8 -*-
 | 
						|
 | 
						|
import sys
 | 
						|
import importlib
 | 
						|
 | 
						|
from ApachController.ApacheController import ApacheController
 | 
						|
 | 
						|
importlib.reload(sys)
 | 
						|
from django.shortcuts import render, redirect
 | 
						|
from loginSystem.views import loadLoginPage
 | 
						|
from .models import PHP, installedPackages, ApachePHP, installedPackagesApache
 | 
						|
from django.http import HttpResponse
 | 
						|
import json
 | 
						|
from plogical.phpUtilities import phpUtilities
 | 
						|
import os
 | 
						|
from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging
 | 
						|
import re
 | 
						|
from plogical.virtualHostUtilities import virtualHostUtilities
 | 
						|
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
 | 
						|
from plogical.httpProc import httpProc
 | 
						|
 | 
						|
 | 
						|
# Create your views here.
 | 
						|
 | 
						|
def loadPHPHome(request):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
 | 
						|
        proc = httpProc(request, 'managePHP/index.html',
 | 
						|
                        None, 'admin')
 | 
						|
        return proc.render()
 | 
						|
 | 
						|
    except KeyError:
 | 
						|
        return redirect(loadLoginPage)
 | 
						|
 | 
						|
def installExtensions(request):
 | 
						|
    try:
 | 
						|
 | 
						|
        if PHP.objects.count() == 0:
 | 
						|
            for i in range(3, 7):
 | 
						|
                php = "php" + str(5) + str(i)
 | 
						|
                newPHP = PHP(phpVers=php)
 | 
						|
                newPHP.save()
 | 
						|
 | 
						|
            newPHP = PHP(phpVers="php70")
 | 
						|
            newPHP.save()
 | 
						|
            newPHP = PHP(phpVers="php71")
 | 
						|
            newPHP.save()
 | 
						|
 | 
						|
            ### Gather php 53 information
 | 
						|
 | 
						|
            php53 = PHP.objects.get(phpVers="php53")
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-bcmath",
 | 
						|
                                             description="A module for PHP applications for using the bcmath library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-common",
 | 
						|
                                             description="Common files for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-dba",
 | 
						|
                                             description="A database abstraction layer module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-enchant",
 | 
						|
                                             description="Human Language and Character Encoding Support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-gd",
 | 
						|
                                             description="A module for PHP applications for using the gd graphics library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-imap",
 | 
						|
                                             description="A module for PHP applications that use IMAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-intl",
 | 
						|
                                             description="Internationalization extension for PHP application",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-ioncube-loader",
 | 
						|
                                             description="Ioncube Loader",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-ldap",
 | 
						|
                                             description="A module for PHP applications that use LDAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-mbstring",
 | 
						|
                                             description="A module for PHP applications which need multi-byte string handling",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-mcrypt",
 | 
						|
                                             description="Standard PHP module provides mcrypt library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-mysql",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-odbc",
 | 
						|
                                             description="A module for PHP applications that use ODBC databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pdo",
 | 
						|
                                             description="A database access abstraction module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pear",
 | 
						|
                                             description="PHP Extension and Application Repository framework",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pecl-apc",
 | 
						|
                                             description="APC caches and optimizes PHP intermediate code",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pgsql",
 | 
						|
                                             description="A PostgreSQL database module for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-process",
 | 
						|
                                             description="Modules for PHP script using system process interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pspell",
 | 
						|
                                             description="A module for PHP applications for using pspell interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-recode",
 | 
						|
                                             description="A module for PHP applications for using the recode library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-snmp",
 | 
						|
                                             description="A module for PHP applications that query SNMP-managed devices",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-soap",
 | 
						|
                                             description="A module for PHP applications that use the SOAP protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-tidy",
 | 
						|
                                             description="Standard PHP module provides tidy library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-xml",
 | 
						|
                                             description="A module for PHP applications which use XML",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-xmlrpc",
 | 
						|
                                             description="A module for PHP applications which use the XML-RPC protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ## non-active packages
 | 
						|
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp53",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-lsphp53-devel",
 | 
						|
                                             description="Files needed for building PHP extensions",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-mysql56",
 | 
						|
                                             description="PHP scripting language for creating dynamic web sites",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-mysqlnd",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-opcache",
 | 
						|
                                             description="The Zend OPcache",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pecl-apc-devel",
 | 
						|
                                             description="APC developer files (header)",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-pecl-apc-panel",
 | 
						|
                                             description="APC control panel",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-sqlite",
 | 
						|
                                             description="Extension for the SQLite V2 Embeddable SQL Database Engine",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-xcache",
 | 
						|
                                             description="PHP accelerator, optimizer, encoder and dynamic content cacher",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp53-xcache-admin",
 | 
						|
                                             description="XCache Administration",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            ##### Gather php 54 information
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            php54 = PHP.objects.get(phpVers="php54")
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-bcmath",
 | 
						|
                                             description="A module for PHP applications for using the bcmath library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-common",
 | 
						|
                                             description="Common files for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp53-dba",
 | 
						|
                                             description="A database abstraction layer module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp54-enchant",
 | 
						|
                                             description="Human Language and Character Encoding Support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-gd",
 | 
						|
                                             description="A module for PHP applications for using the gd graphics library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-imap",
 | 
						|
                                             description="A module for PHP applications that use IMAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp54-intl",
 | 
						|
                                             description="Internationalization extension for PHP application",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-ioncube-loader",
 | 
						|
                                             description="Ioncube Loader",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-ldap",
 | 
						|
                                             description="A module for PHP applications that use LDAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mbstring",
 | 
						|
                                             description="A module for PHP applications which need multi-byte string handling",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mcrypt",
 | 
						|
                                             description="Standard PHP module provides mcrypt library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mysql",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-odbc",
 | 
						|
                                             description="A module for PHP applications that use ODBC databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pdo",
 | 
						|
                                             description="A database access abstraction module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pear",
 | 
						|
                                             description="PHP Extension and Application Repository framework",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pecl-apc",
 | 
						|
                                             description="APC caches and optimizes PHP intermediate code",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php53,
 | 
						|
                                             extensionName="lsphp54-pgsql",
 | 
						|
                                             description="A PostgreSQL database module for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-process",
 | 
						|
                                             description="Modules for PHP script using system process interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pspell",
 | 
						|
                                             description="A module for PHP applications for using pspell interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-recode",
 | 
						|
                                             description="A module for PHP applications for using the recode library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-snmp",
 | 
						|
                                             description="A module for PHP applications that query SNMP-managed devices",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-soap",
 | 
						|
                                             description="A module for PHP applications that use the SOAP protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-tidy",
 | 
						|
                                             description="Standard PHP module provides tidy library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-xml",
 | 
						|
                                             description="A module for PHP applications which use XML",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-xmlrpc",
 | 
						|
                                             description="A module for PHP applications which use the XML-RPC protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ## non-active packages
 | 
						|
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp54",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mysql56-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp54-mysql56",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-lsphp53-devel",
 | 
						|
                                             description="Files needed for building PHP extensions",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mysql56",
 | 
						|
                                             description="PHP scripting language for creating dynamic web sites",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-mysqlnd",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-opcache",
 | 
						|
                                             description="The Zend OPcache",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pecl-apc-devel",
 | 
						|
                                             description="APC developer files (header)",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-pecl-apc-panel",
 | 
						|
                                             description="APC control panel",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-sqlite",
 | 
						|
                                             description="Extension for the SQLite V2 Embeddable SQL Database Engine",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-xcache",
 | 
						|
                                             description="PHP accelerator, optimizer, encoder and dynamic content cacher",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp54-xcache-admin",
 | 
						|
                                             description="XCache Administration",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            ##### Gather php 55 information
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            php55 = PHP.objects.get(phpVers="php55")
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-bcmath",
 | 
						|
                                             description="A module for PHP applications for using the bcmath library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-common",
 | 
						|
                                             description="Common files for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-dba",
 | 
						|
                                             description="A database abstraction layer module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-enchant",
 | 
						|
                                             description="Human Language and Character Encoding Support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-gd",
 | 
						|
                                             description="A module for PHP applications for using the gd graphics library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-imap",
 | 
						|
                                             description="A module for PHP applications that use IMAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-intl",
 | 
						|
                                             description="Internationalization extension for PHP application",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-ioncube-loader",
 | 
						|
                                             description="Ioncube Loader",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-ldap",
 | 
						|
                                             description="A module for PHP applications that use LDAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-mbstring",
 | 
						|
                                             description="A module for PHP applications which need multi-byte string handling",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-mcrypt",
 | 
						|
                                             description="Standard PHP module provides mcrypt library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-mysql",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-odbc",
 | 
						|
                                             description="A module for PHP applications that use ODBC databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-pdo",
 | 
						|
                                             description="A database access abstraction module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-pear",
 | 
						|
                                             description="PHP Extension and Application Repository framework",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-pgsql",
 | 
						|
                                             description="A PostgreSQL database module for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-process",
 | 
						|
                                             description="Modules for PHP script using system process interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-pspell",
 | 
						|
                                             description="A module for PHP applications for using pspell interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-recode",
 | 
						|
                                             description="A module for PHP applications for using the recode library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-snmp",
 | 
						|
                                             description="A module for PHP applications that query SNMP-managed devices",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-soap",
 | 
						|
                                             description="A module for PHP applications that use the SOAP protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-tidy",
 | 
						|
                                             description="Standard PHP module provides tidy library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-xml",
 | 
						|
                                             description="A module for PHP applications which use XML",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-xmlrpc",
 | 
						|
                                             description="A module for PHP applications which use the XML-RPC protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ## non-active packages
 | 
						|
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp55",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-mysql56-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp55-mysql56",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-lsphp53-devel",
 | 
						|
                                             description="Files needed for building PHP extensions",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php54,
 | 
						|
                                             extensionName="lsphp55-mysql56",
 | 
						|
                                             description="PHP scripting language for creating dynamic web sites",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-mysqlnd",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-opcache",
 | 
						|
                                             description="The Zend OPcache",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-sqlite",
 | 
						|
                                             description="Extension for the SQLite V2 Embeddable SQL Database Engine",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-xcache",
 | 
						|
                                             description="PHP accelerator, optimizer, encoder and dynamic content cacher",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp55-xcache-admin",
 | 
						|
                                             description="XCache Administration",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            ##### Gather php 56 information
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            php56 = PHP.objects.get(phpVers="php56")
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-bcmath",
 | 
						|
                                             description="A module for PHP applications for using the bcmath library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-common",
 | 
						|
                                             description="Common files for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-dba",
 | 
						|
                                             description="A database abstraction layer module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-enchant",
 | 
						|
                                             description="Human Language and Character Encoding Support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-gd",
 | 
						|
                                             description="A module for PHP applications for using the gd graphics library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-gmp",
 | 
						|
                                             description="A module for PHP applications for using the GNU MP library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-imap",
 | 
						|
                                             description="A module for PHP applications that use IMAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-intl",
 | 
						|
                                             description="Internationalization extension for PHP application",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-ioncube-loader",
 | 
						|
                                             description="Ioncube Loader",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-ldap",
 | 
						|
                                             description="A module for PHP applications that use LDAP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mbstring",
 | 
						|
                                             description="A module for PHP applications which need multi-byte string handling",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mcrypt",
 | 
						|
                                             description="Standard PHP module provides mcrypt library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mysql",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-odbc",
 | 
						|
                                             description="A module for PHP applications that use ODBC databases",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-pdo",
 | 
						|
                                             description="A database access abstraction module for PHP applications",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php55,
 | 
						|
                                             extensionName="lsphp56-pear",
 | 
						|
                                             description="PHP Extension and Application Repository framework",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-pgsql",
 | 
						|
                                             description="A PostgreSQL database module for PHP",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-process",
 | 
						|
                                             description="Modules for PHP script using system process interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-pspell",
 | 
						|
                                             description="A module for PHP applications for using pspell interfaces",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-recode",
 | 
						|
                                             description="A module for PHP applications for using the recode library",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-snmp",
 | 
						|
                                             description="A module for PHP applications that query SNMP-managed devices",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-soap",
 | 
						|
                                             description="A module for PHP applications that use the SOAP protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-tidy",
 | 
						|
                                             description="Standard PHP module provides tidy library support",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-xml",
 | 
						|
                                             description="A module for PHP applications which use XML",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-xmlrpc",
 | 
						|
                                             description="A module for PHP applications which use the XML-RPC protocol",
 | 
						|
                                             status=1)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
 | 
						|
            ## non-active packages
 | 
						|
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp56",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mysql56-debuginfo",
 | 
						|
                                             description="Debug information for package lsphp56-mysql56",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-devel",
 | 
						|
                                             description="Files needed for building PHP extensions",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mysql56",
 | 
						|
                                             description="PHP scripting language for creating dynamic web sites",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-mysqlnd",
 | 
						|
                                             description="A module for PHP applications that use MySQL databases",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-opcache",
 | 
						|
                                             description="The Zend OPcache",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-sqlite",
 | 
						|
                                             description="Extension for the SQLite V2 Embeddable SQL Database Engine",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-xcache",
 | 
						|
                                             description="PHP accelerator, optimizer, encoder and dynamic content cacher",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-xcache-admin",
 | 
						|
                                             description="XCache Administration",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            phpExtension = installedPackages(phpVers=php56,
 | 
						|
                                             extensionName="lsphp56-pecl-imagick",
 | 
						|
                                             description="Extension to create and modify images using ImageMagick",
 | 
						|
                                             status=0)
 | 
						|
 | 
						|
            phpExtension.save()
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            ##### Gather php 70 information
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            phpVersion = PHP.objects.get(phpVers="php70")
 | 
						|
 | 
						|
            phpPath = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                phpPath = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php70.xml')
 | 
						|
            else:
 | 
						|
                phpPath = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp70.xml')
 | 
						|
 | 
						|
            php = ElementTree.parse(phpPath)
 | 
						|
 | 
						|
            phpExtensions = php.findall('extension')
 | 
						|
 | 
						|
            for extension in phpExtensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=phpVersion,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            ##### Gather php 71 information
 | 
						|
 | 
						|
            ### ################ #################
 | 
						|
 | 
						|
            phpVersion = PHP.objects.get(phpVers="php71")
 | 
						|
 | 
						|
            phpPath = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                phpPath = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php71.xml')
 | 
						|
            else:
 | 
						|
                phpPath = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp71.xml')
 | 
						|
 | 
						|
            php = ElementTree.parse(phpPath)
 | 
						|
 | 
						|
            phpExtensions = php.findall('extension')
 | 
						|
 | 
						|
            for extension in phpExtensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=phpVersion,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
 | 
						|
        if PHP.objects.count() == 6:
 | 
						|
 | 
						|
            newPHP72 = PHP(phpVers="php72")
 | 
						|
            newPHP72.save()
 | 
						|
 | 
						|
            php72Path = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                php72Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php72.xml')
 | 
						|
            else:
 | 
						|
                php72Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp72.xml')
 | 
						|
 | 
						|
            php72 = ElementTree.parse(php72Path)
 | 
						|
 | 
						|
            php72Extensions = php72.findall('extension')
 | 
						|
 | 
						|
            for extension in php72Extensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=newPHP72,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
 | 
						|
        if PHP.objects.count() == 7:
 | 
						|
 | 
						|
            newPHP73 = PHP(phpVers="php73")
 | 
						|
            newPHP73.save()
 | 
						|
 | 
						|
            php73Path = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                php73Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php73.xml')
 | 
						|
            else:
 | 
						|
                php73Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp73.xml')
 | 
						|
 | 
						|
            php73 = ElementTree.parse(php73Path)
 | 
						|
 | 
						|
            php73Extensions = php73.findall('extension')
 | 
						|
 | 
						|
            for extension in php73Extensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=newPHP73,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
 | 
						|
        if PHP.objects.count() == 8:
 | 
						|
 | 
						|
            newPHP74 = PHP(phpVers="php74")
 | 
						|
            newPHP74.save()
 | 
						|
 | 
						|
            php74Path = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                php74Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php74.xml')
 | 
						|
            else:
 | 
						|
                php74Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp74.xml')
 | 
						|
 | 
						|
            php74 = ElementTree.parse(php74Path)
 | 
						|
 | 
						|
            php74Extensions = php74.findall('extension')
 | 
						|
 | 
						|
            for extension in php74Extensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=newPHP74,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
        try:
 | 
						|
            newPHP80 = PHP(phpVers="php80")
 | 
						|
            newPHP80.save()
 | 
						|
 | 
						|
            php80Path = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                php80Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php80.xml')
 | 
						|
            else:
 | 
						|
                php80Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp80.xml')
 | 
						|
 | 
						|
            php80 = ElementTree.parse(php80Path)
 | 
						|
 | 
						|
            php80Extensions = php80.findall('extension')
 | 
						|
 | 
						|
            for extension in php80Extensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=newPHP80,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
        except:
 | 
						|
            pass
 | 
						|
        
 | 
						|
        try:
 | 
						|
            newPHP81 = PHP(phpVers="php81")
 | 
						|
            newPHP81.save()
 | 
						|
 | 
						|
            php81Path = ''
 | 
						|
 | 
						|
            if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                php81Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'php81.xml')
 | 
						|
            else:
 | 
						|
                php81Path = os.path.join('/usr', 'local', 'CyberCP', 'managePHP', 'ubuntuphp81.xml')
 | 
						|
 | 
						|
            php81 = ElementTree.parse(php81Path)
 | 
						|
 | 
						|
            php81Extensions = php81.findall('extension')
 | 
						|
 | 
						|
            for extension in php81Extensions:
 | 
						|
                extensionName = extension.find('extensionName').text
 | 
						|
                extensionDescription = extension.find('extensionDescription').text
 | 
						|
                status = int(extension.find('status').text)
 | 
						|
 | 
						|
                phpExtension = installedPackages(phpVers=newPHP81,
 | 
						|
                                                 extensionName=extensionName,
 | 
						|
                                                 description=extensionDescription,
 | 
						|
                                                 status=status)
 | 
						|
 | 
						|
                phpExtension.save()
 | 
						|
        except:
 | 
						|
            pass
 | 
						|
 | 
						|
        apache = ApacheController.checkIfApacheInstalled()
 | 
						|
 | 
						|
        if apache:
 | 
						|
            if request.GET.get('apache', None) == None:
 | 
						|
                phps = PHPManager.findPHPVersions()
 | 
						|
            else:
 | 
						|
                phps = PHPManager.findApachePHPVersions()
 | 
						|
        else:
 | 
						|
            phps = PHPManager.findPHPVersions()
 | 
						|
 | 
						|
        proc = httpProc(request, 'managePHP/installExtensions.html',
 | 
						|
                        {'phps': phps, 'apache': apache}, 'admin')
 | 
						|
        return proc.render()
 | 
						|
 | 
						|
    except KeyError:
 | 
						|
        return redirect(loadLoginPage)
 | 
						|
 | 
						|
def getExtensionsInformation(request):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('fetchStatus', 0)
 | 
						|
 | 
						|
        try:
 | 
						|
            if request.method == 'POST':
 | 
						|
 | 
						|
                data = json.loads(request.body)
 | 
						|
                phpVers = data['phpSelection']
 | 
						|
 | 
						|
                if request.GET.get('apache', None) == None:
 | 
						|
                    phpVers = f"lsphp{PHPManager.getPHPString(phpVers)}"
 | 
						|
                else:
 | 
						|
                    if ProcessUtilities.decideDistro() == ProcessUtilities.centos or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                        phpVers = f"php{PHPManager.getPHPString(phpVers)}"
 | 
						|
                    else:
 | 
						|
                        phpVers = phpVers.replace(' ', '').lower()
 | 
						|
 | 
						|
                    if os.path.exists(ProcessUtilities.debugPath):
 | 
						|
                        logging.writeToFile(f'PHP Version apache {phpVers}')
 | 
						|
 | 
						|
                # php = PHP.objects.get(phpVers=phpVers)
 | 
						|
 | 
						|
                if os.path.exists('/etc/lsb-release'):
 | 
						|
                    command = f'apt list | grep {phpVers}'
 | 
						|
                else:
 | 
						|
                    command = 'yum list installed'
 | 
						|
                    resultInstalled = ProcessUtilities.outputExecutioner(command)
 | 
						|
 | 
						|
                    command = f'yum list | grep ^{phpVers} | xargs -n3 | column -t'
 | 
						|
 | 
						|
                result = ProcessUtilities.outputExecutioner(command).split('\n')
 | 
						|
 | 
						|
                #records = php.installedpackages_set.all()
 | 
						|
 | 
						|
                json_data = "["
 | 
						|
                checker = 0
 | 
						|
                counter = 1
 | 
						|
 | 
						|
                for items in result:
 | 
						|
                    if os.path.exists('/etc/lsb-release'):
 | 
						|
                        if items.find(phpVers) > -1:
 | 
						|
                            if items.find('installed') == -1:
 | 
						|
                                status = "Not-Installed"
 | 
						|
                            else:
 | 
						|
                                status = "Installed"
 | 
						|
 | 
						|
                            dic = {'id': counter,
 | 
						|
                                   'phpVers': phpVers,
 | 
						|
                                   'extensionName': items.split('/')[0],
 | 
						|
                                   'description': items,
 | 
						|
                                   'status': status
 | 
						|
                                   }
 | 
						|
 | 
						|
                            if checker == 0:
 | 
						|
                                json_data = json_data + json.dumps(dic)
 | 
						|
                                checker = 1
 | 
						|
                            else:
 | 
						|
                                json_data = json_data + ',' + json.dumps(dic)
 | 
						|
                            counter += 1
 | 
						|
                    else:
 | 
						|
                        ResultExt = items.split(' ')
 | 
						|
                        extesnion = ResultExt[0]
 | 
						|
 | 
						|
                        if extesnion.find(phpVers) > -1:
 | 
						|
                            if resultInstalled.find(extesnion) == -1:
 | 
						|
                                status = "Not-Installed"
 | 
						|
                            else:
 | 
						|
                                status = "Installed"
 | 
						|
 | 
						|
                            dic = {'id': counter,
 | 
						|
                                   'phpVers': phpVers,
 | 
						|
                                   'extensionName': extesnion,
 | 
						|
                                   'description': items,
 | 
						|
                                   'status': status
 | 
						|
                                   }
 | 
						|
 | 
						|
 | 
						|
                            if checker == 0:
 | 
						|
                                json_data = json_data + json.dumps(dic)
 | 
						|
                                checker = 1
 | 
						|
                            else:
 | 
						|
                                json_data = json_data + ',' + json.dumps(dic)
 | 
						|
                            counter += 1
 | 
						|
 | 
						|
                json_data = json_data + ']'
 | 
						|
                final_json = json.dumps({'fetchStatus': 1, 'error_message': "None", "data": json_data})
 | 
						|
                return HttpResponse(final_json)
 | 
						|
 | 
						|
        except BaseException as msg:
 | 
						|
            final_dic = {'fetchStatus': 0, 'error_message': str(msg)}
 | 
						|
            final_json = json.dumps(final_dic)
 | 
						|
 | 
						|
            return HttpResponse(final_json)
 | 
						|
    except KeyError:
 | 
						|
        final_dic = {'fetchStatus': 0, 'error_message': "Not Logged In, please refresh the page or login again."}
 | 
						|
        final_json = json.dumps(final_dic)
 | 
						|
        return HttpResponse(final_json)
 | 
						|
 | 
						|
def submitExtensionRequest(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)
 | 
						|
                extensionName = data['extensionName']
 | 
						|
                type = data['type']
 | 
						|
 | 
						|
                if type == "install":
 | 
						|
                    execPath = "/usr/local/CyberCP/bin/python " + virtualHostUtilities.cyberPanel + "/plogical/phpUtilities.py"
 | 
						|
                    execPath = execPath + " installPHPExtension --extension " + extensionName
 | 
						|
                else:
 | 
						|
                    execPath = "/usr/local/CyberCP/bin/python " + virtualHostUtilities.cyberPanel + "/plogical/phpUtilities.py"
 | 
						|
                    execPath = execPath + " unInstallPHPExtension --extension " + extensionName
 | 
						|
 | 
						|
                ProcessUtilities.popenExecutioner(execPath)
 | 
						|
 | 
						|
                final_json = json.dumps({'extensionRequestStatus': 1, 'error_message': "None"})
 | 
						|
                return HttpResponse(final_json)
 | 
						|
 | 
						|
        except BaseException as 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_json = json.dumps(final_dic)
 | 
						|
        return HttpResponse(final_json)
 | 
						|
 | 
						|
def getRequestStatus(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 or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                    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)
 | 
						|
 | 
						|
                if requestStatus.find('No such') > -1:
 | 
						|
                    requestStatus = ""
 | 
						|
 | 
						|
                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 = installedPackages.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({'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 = installedPackages.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({'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 = installedPackages.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({'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 = installedPackages.objects.get(extensionName=extensionName)
 | 
						|
                    # ext.status = 0
 | 
						|
                    # ext.save()
 | 
						|
 | 
						|
                    final_json = json.dumps({'finished': 1, 'extensionRequestStatus': 1,
 | 
						|
                                             'error_message': "None",
 | 
						|
                                             'requestStatus': requestStatus,
 | 
						|
                                             'size': requestStatusSize})
 | 
						|
                    return HttpResponse(final_json)
 | 
						|
                else:
 | 
						|
                    final_json = json.dumps({'finished': 0, 'extensionRequestStatus': 1,
 | 
						|
                                             'error_message': "None",
 | 
						|
                                             'requestStatus': requestStatus,
 | 
						|
                                             'size': requestStatusSize})
 | 
						|
                    return HttpResponse(final_json)
 | 
						|
 | 
						|
 | 
						|
 | 
						|
        except BaseException as 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_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 or ProcessUtilities.decideDistro() == ProcessUtilities.cent8:
 | 
						|
                    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 as 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 as 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)
 | 
						|
 | 
						|
def editPHPConfigs(request):
 | 
						|
    try:
 | 
						|
        apache = ApacheController.checkIfApacheInstalled()
 | 
						|
 | 
						|
        if apache:
 | 
						|
            if request.GET.get('apache', None) == None:
 | 
						|
                phps = PHPManager.findPHPVersions()
 | 
						|
            else:
 | 
						|
                phps = PHPManager.findApachePHPVersions()
 | 
						|
        else:
 | 
						|
            phps = PHPManager.findPHPVersions()
 | 
						|
 | 
						|
        proc = httpProc(request, 'managePHP/editPHPConfig.html',
 | 
						|
                        {'phps': phps, 'apache': apache}, 'admin')
 | 
						|
        return proc.render()
 | 
						|
 | 
						|
    except KeyError:
 | 
						|
        return redirect(loadLoginPage)
 | 
						|
 | 
						|
def getCurrentPHPConfig(request):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('fetchStatus', 0)
 | 
						|
        try:
 | 
						|
            if request.method == 'POST':
 | 
						|
 | 
						|
                data = json.loads(request.body)
 | 
						|
                phpVers = data['phpSelection']
 | 
						|
 | 
						|
                if os.path.exists(ProcessUtilities.debugPath):
 | 
						|
                    logging.writeToFile(f"apache value {request.GET.get('apache', None)}")
 | 
						|
 | 
						|
                from ApachController.ApacheVhosts import ApacheVhost
 | 
						|
                path = ApacheVhost.DecidePHPPathforManager(request.GET.get('apache', None), phpVers)
 | 
						|
 | 
						|
                allow_url_fopen = "0"
 | 
						|
                display_errors = "0"
 | 
						|
                file_uploads = "0"
 | 
						|
                allow_url_include = "0"
 | 
						|
                memory_limit = ""
 | 
						|
                max_execution_time = ""
 | 
						|
                upload_max_filesize = ""
 | 
						|
                max_input_time = ""
 | 
						|
 | 
						|
                command = "sudo cat " + path
 | 
						|
                data = ProcessUtilities.outputExecutioner(command).split('\n')
 | 
						|
 | 
						|
                for items in data:
 | 
						|
                    if items.find("allow_url_fopen") > -1 and items.find("=") > -1:
 | 
						|
                        if items.find("On") > -1:
 | 
						|
                            allow_url_fopen = "1"
 | 
						|
                    if items.find("display_errors") > -1 and items.find("=") > -1:
 | 
						|
                        if items.find("On") > -1:
 | 
						|
                            display_errors = "1"
 | 
						|
                    if items.find("file_uploads") > -1 and items.find("=") > -1:
 | 
						|
                        if items.find("On") > -1:
 | 
						|
                            file_uploads = "1"
 | 
						|
                    if items.find("allow_url_include") > -1 and items.find("=") > -1:
 | 
						|
                        if items.find("On") > -1:
 | 
						|
                            allow_url_include = "1"
 | 
						|
                    if items.find("memory_limit") > -1 and items.find("=") > -1:
 | 
						|
                        memory_limit = re.findall(r"[A-Za-z0-9_]+", items)[1]
 | 
						|
                    if items.find("max_execution_time") > -1 and items.find("=") > -1:
 | 
						|
                        max_execution_time = re.findall(r"[A-Za-z0-9_]+", items)[1]
 | 
						|
                    if items.find("upload_max_filesize") > -1 and items.find("=") > -1:
 | 
						|
                        upload_max_filesize = re.findall(r"[A-Za-z0-9_]+", items)[1]
 | 
						|
                    if items.find("max_input_time") > -1 and items.find("=") > -1:
 | 
						|
                        max_input_time = re.findall(r"[A-Za-z0-9_]+", items)[1]
 | 
						|
                    if items.find("post_max_size") > -1 and items.find("=") > -1:
 | 
						|
                        post_max_size = re.findall(r"[A-Za-z0-9_]+", items)[1]
 | 
						|
 | 
						|
                final_dic = {'fetchStatus': 1,
 | 
						|
                             'allow_url_fopen': allow_url_fopen,
 | 
						|
                             'display_errors': display_errors,
 | 
						|
                             'file_uploads': file_uploads,
 | 
						|
                             'allow_url_include': allow_url_include,
 | 
						|
                             'memory_limit': memory_limit,
 | 
						|
                             'max_execution_time': max_execution_time,
 | 
						|
                             'upload_max_filesize': upload_max_filesize,
 | 
						|
                             'max_input_time': max_input_time,
 | 
						|
                             'post_max_size': post_max_size}
 | 
						|
 | 
						|
                final_json = json.dumps(final_dic)
 | 
						|
 | 
						|
                return HttpResponse(final_json)
 | 
						|
 | 
						|
        except BaseException as msg:
 | 
						|
            final_dic = {'fetchStatus': 0, 'error_message': str(msg)}
 | 
						|
            final_json = json.dumps(final_dic)
 | 
						|
 | 
						|
            return HttpResponse(final_json)
 | 
						|
 | 
						|
        proc = httpProc(request, 'managePHP/editPHPConfig.html',
 | 
						|
                        None, 'admin')
 | 
						|
        return proc.render()
 | 
						|
    except KeyError:
 | 
						|
        return redirect(loadLoginPage)
 | 
						|
 | 
						|
def savePHPConfigBasic(request):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('saveStatus', 0)
 | 
						|
        try:
 | 
						|
            if request.method == 'POST':
 | 
						|
 | 
						|
                data = json.loads(request.body)
 | 
						|
                phpVers = data['phpSelection']
 | 
						|
                allow_url_fopen = data['allow_url_fopen']
 | 
						|
                display_errors = data['display_errors']
 | 
						|
                file_uploads = data['file_uploads']
 | 
						|
                allow_url_include = data['allow_url_include']
 | 
						|
                memory_limit = data['memory_limit']
 | 
						|
                max_execution_time = data['max_execution_time']
 | 
						|
                upload_max_filesize = data['upload_max_filesize']
 | 
						|
                max_input_time = data['max_input_time']
 | 
						|
                post_max_size = data['post_max_size']
 | 
						|
 | 
						|
                if allow_url_fopen == True:
 | 
						|
                    allow_url_fopen = "allow_url_fopen = On"
 | 
						|
                else:
 | 
						|
                    allow_url_fopen = "allow_url_fopen = Off"
 | 
						|
 | 
						|
                if display_errors == True:
 | 
						|
                    display_errors = "display_errors = On"
 | 
						|
                else:
 | 
						|
                    display_errors = "display_errors = Off"
 | 
						|
 | 
						|
                if file_uploads == True:
 | 
						|
                    file_uploads = "file_uploads = On"
 | 
						|
                else:
 | 
						|
                    file_uploads = "file_uploads = Off"
 | 
						|
 | 
						|
                if allow_url_include == True:
 | 
						|
                    allow_url_include = "allow_url_include = On"
 | 
						|
                else:
 | 
						|
                    allow_url_include = "allow_url_include = Off"
 | 
						|
 | 
						|
                #phpVers = "php" + PHPManager.getPHPString(phpVers)
 | 
						|
 | 
						|
                if request.GET.get('apache', None) == None:
 | 
						|
                    apache = 0
 | 
						|
                else:
 | 
						|
                    apache = 1
 | 
						|
 | 
						|
                ##
 | 
						|
 | 
						|
                execPath = "/usr/local/CyberCP/bin/python " + virtualHostUtilities.cyberPanel + "/plogical/phpUtilities.py"
 | 
						|
                execPath = execPath + " savePHPConfigBasic --phpVers '" + phpVers + "' --allow_url_fopen '" + allow_url_fopen +\
 | 
						|
                           "' --display_errors '" + display_errors + "' --file_uploads '" + file_uploads + "' --allow_url_include '" \
 | 
						|
                           + allow_url_include + "' --memory_limit " + memory_limit + " --max_execution_time " + \
 | 
						|
                           max_execution_time + " --upload_max_filesize " + upload_max_filesize \
 | 
						|
                           + " --max_input_time " + max_input_time + " --post_max_size " + post_max_size + f" --apache {str(apache)}"
 | 
						|
 | 
						|
                output = ProcessUtilities.outputExecutioner(execPath)
 | 
						|
 | 
						|
                if output.find("1,None") > -1:
 | 
						|
                    data_ret = {'saveStatus': 1}
 | 
						|
                    final_json = json.dumps(data_ret)
 | 
						|
                    return HttpResponse(final_json)
 | 
						|
                else:
 | 
						|
                    final_dic = {'saveStatus': 0, 'error_message': output}
 | 
						|
                    final_json = json.dumps(final_dic)
 | 
						|
                    return HttpResponse(final_json)
 | 
						|
 | 
						|
        except BaseException as 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):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('fetchStatus', 0)
 | 
						|
        try:
 | 
						|
            if request.method == 'POST':
 | 
						|
 | 
						|
                data = json.loads(request.body)
 | 
						|
                phpVers = data['phpSelection']
 | 
						|
 | 
						|
                if os.path.exists(ProcessUtilities.debugPath):
 | 
						|
                    logging.writeToFile(f"apache value advanced config {request.GET.get('apache', None)}")
 | 
						|
 | 
						|
                from ApachController.ApacheVhosts import ApacheVhost
 | 
						|
                path = ApacheVhost.DecidePHPPathforManager(request.GET.get('apache', None), phpVers)
 | 
						|
 | 
						|
                command = "sudo cat " + path
 | 
						|
                configData = ProcessUtilities.outputExecutioner(command)
 | 
						|
 | 
						|
                status = {"fetchStatus": 1, "configData": configData}
 | 
						|
                final_json = json.dumps(status)
 | 
						|
                return HttpResponse(final_json)
 | 
						|
 | 
						|
 | 
						|
        except BaseException as 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']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('saveStatus', 0)
 | 
						|
 | 
						|
        if request.method == 'POST':
 | 
						|
            try:
 | 
						|
                data = json.loads(request.body)
 | 
						|
                phpVers = data['phpSelection']
 | 
						|
                phpVersS = phpVers
 | 
						|
 | 
						|
                from ApachController.ApacheVhosts import ApacheVhost
 | 
						|
                path = ApacheVhost.DecidePHPPathforManager(request.GET.get('apache', None), phpVers)
 | 
						|
 | 
						|
                tempPath = "/home/cyberpanel/" + str(randint(1000, 9999))
 | 
						|
 | 
						|
                vhost = open(tempPath, "w")
 | 
						|
                vhost.write(data['configData'])
 | 
						|
                vhost.close()
 | 
						|
 | 
						|
                execPath = "/usr/local/CyberCP/bin/python " + virtualHostUtilities.cyberPanel + "/plogical/phpUtilities.py"
 | 
						|
                execPath = execPath + " savePHPConfigAdvance --phpVers " + path + " --tempPath " + tempPath
 | 
						|
 | 
						|
                output = ProcessUtilities.outputExecutioner(execPath)
 | 
						|
 | 
						|
                if output.find("1,None") > -1:
 | 
						|
                    status = {"saveStatus": 1, "configData": data['configData']}
 | 
						|
                    final_json = json.dumps(status)
 | 
						|
                    return HttpResponse(final_json)
 | 
						|
                else:
 | 
						|
                    data_ret = {'saveStatus': 0, 'error_message': output}
 | 
						|
                    json_data = json.dumps(data_ret)
 | 
						|
                    return HttpResponse(json_data)
 | 
						|
 | 
						|
            except BaseException as msg:
 | 
						|
                data_ret = {'saveStatus': 0, 'error_message': str(msg)}
 | 
						|
                json_data = json.dumps(data_ret)
 | 
						|
                return HttpResponse(json_data)
 | 
						|
 | 
						|
    except KeyError as msg:
 | 
						|
        logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[saveConfigsToFile]")
 | 
						|
        return HttpResponse("Not Logged in as admin")
 | 
						|
 | 
						|
## Restart PHP
 | 
						|
 | 
						|
def restartPHP(request):
 | 
						|
    try:
 | 
						|
        userID = request.session['userID']
 | 
						|
        currentACL = ACLManager.loadedACL(userID)
 | 
						|
 | 
						|
        if currentACL['admin'] == 1:
 | 
						|
            pass
 | 
						|
        else:
 | 
						|
            return ACLManager.loadErrorJson('status', 0)
 | 
						|
 | 
						|
        command = 'killall lsphp'
 | 
						|
        ProcessUtilities.executioner(command)
 | 
						|
 | 
						|
        status = {"status": 1}
 | 
						|
        final_json = json.dumps(status)
 | 
						|
        return HttpResponse(final_json)
 | 
						|
 | 
						|
    except BaseException as msg:
 | 
						|
        final_dic = {'status': 0, 'error_message': str(msg)}
 | 
						|
        final_json = json.dumps(final_dic)
 | 
						|
        return HttpResponse(final_json)
 |