From 6de0aab86c64d68578258139bea75cc6221882f7 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Wed, 07 Mar 2012 09:48:47 -0500
Subject: [PATCH] - Improved support for multiple PHP versions. Additional PHP versions have now their own form and database table.
---
interface/web/sites/web_domain_edit.php | 41 ++++++++++++++++++++++-------------------
1 files changed, 22 insertions(+), 19 deletions(-)
diff --git a/interface/web/sites/web_domain_edit.php b/interface/web/sites/web_domain_edit.php
index d861cdb..4d70e89 100644
--- a/interface/web/sites/web_domain_edit.php
+++ b/interface/web/sites/web_domain_edit.php
@@ -45,7 +45,7 @@
$app->auth->check_module_permissions('sites');
// Loading classes
-$app->uses('tpl,tform,tform_actions,ini_parser,getconf');
+$app->uses('tpl,tform,tform_actions');
$app->load('tform_actions');
class page_action extends tform_actions {
@@ -130,17 +130,18 @@
unset($ips);
//PHP Version Selection (FastCGI)
- $fastcgi = $app->getconf->get_server_config($client['default_webserver'],'fastcgi');
- $php_versions = explode('\n',$fastcgi['fastcgi_additional_php_versions']);
+ $sql = "SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ".$client['default_webserver']." AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")";
+ $php_records = $app->db->queryAllRecords($sql);
$php_select = "<option value=''>Default</option>";
- if(is_array($php_versions)) {
- foreach( $php_versions as $php_version) {
+ if(is_array($php_records) && !empty($php_records)) {
+ foreach( $php_records as $php_record) {
+ $php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
$selected = ($php_version == $this->dataRecord["fastcgi_php_version"])?'SELECTED':'';
- $php_select .= "<option value='$php_version' $selected>$php_version</option>\r\n";
+ $php_select .= "<option value='$php_version' $selected>".$php_record['name']."</option>\r\n";
}
}
$app->tpl->setVar("fastcgi_php_version",$php_select);
- unset($php_versions);
+ unset($php_records);
//* Reseller: If the logged in user is not admin and has sub clients (is a reseller)
} elseif ($_SESSION["s"]["user"]["typ"] != 'admin' && $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
@@ -199,17 +200,18 @@
unset($ips);
//PHP Version Selection (FastCGI)
- $fastcgi = $app->getconf->get_server_config($client['default_webserver'],'fastcgi');
- $php_versions = explode('\n',$fastcgi['fastcgi_additional_php_versions']);
+ $sql = "SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ".$client['default_webserver']." AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")";
+ $php_records = $app->db->queryAllRecords($sql);
$php_select = "<option value=''>Default</option>";
- if(is_array($php_versions)) {
- foreach( $php_versions as $php_version) {
+ if(is_array($php_records) && !empty($php_records)) {
+ foreach( $php_records as $php_record) {
+ $php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
$selected = ($php_version == $this->dataRecord["fastcgi_php_version"])?'SELECTED':'';
- $php_select .= "<option value='$php_version' $selected>$php_version</option>\r\n";
+ $php_select .= "<option value='$php_version' $selected>".$php_record['name']."</option>\r\n";
}
}
$app->tpl->setVar("fastcgi_php_version",$php_select);
- unset($php_versions);
+ unset($php_records);
//* Admin: If the logged in user is admin
} else {
@@ -254,17 +256,18 @@
unset($ips);
//PHP Version Selection (FastCGI)
- $fastcgi = $app->getconf->get_server_config($server_id,'fastcgi');
- $php_versions = explode('\n',$fastcgi['fastcgi_additional_php_versions']);
+ $sql = "SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = $server_id";
+ $php_records = $app->db->queryAllRecords($sql);
$php_select = "<option value=''>Default</option>";
- if(is_array($php_versions)) {
- foreach( $php_versions as $php_version) {
+ if(is_array($php_records) && !empty($php_records)) {
+ foreach( $php_records as $php_record) {
+ $php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
$selected = ($php_version == $this->dataRecord["fastcgi_php_version"])?'SELECTED':'';
- $php_select .= "<option value='$php_version' $selected>$php_version</option>\r\n";
+ $php_select .= "<option value='$php_version' $selected>".$php_record['name']."</option>\r\n";
}
}
$app->tpl->setVar("fastcgi_php_version",$php_select);
- unset($php_versions);
+ unset($php_records);
// Fill the client select field
$sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0 ORDER BY name";
--
Gitblit v1.9.1