From 7bce72dd8ffc5a1e072d9d51cd4e40ede7258d3d Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Thu, 07 Apr 2016 12:26:40 -0400
Subject: [PATCH] Fixed: Issue #3693 Choose better default customer numbers for clients of resellers.
---
install/lib/update.lib.php | 29 +++++++++++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php
index 56f6bd6..a6bb42d 100644
--- a/install/lib/update.lib.php
+++ b/install/lib/update.lib.php
@@ -123,6 +123,15 @@
function updateDbAndIni() {
global $inst, $conf;
+ //* check sql-mode
+ $check_sql_mode = $inst->db->queryOneRecord("SELECT @@sql_mode");
+ if ($check_sql_mode['@@sql_mode'] != '' && $check_sql_mode['@@sql_mode'] != 'NO_ENGINE_SUBSTITUTION') {
+ echo "Wrong SQL-mode. You should use NO_ENGINE_SUBSTITUTION. Add\n\n";
+ echo " sql-mode=\"NO_ENGINE_SUBSTITUTION\"\n\n";
+ echo"to the mysqld-section in /etc/mysql/my.cnf and restart mysqld afterwards\n";
+ die();
+ }
+
//* Update $conf array with values from the server.ini that shall be preserved
$tmp = $inst->db->queryOneRecord("SELECT * FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . '.server', $conf['server_id']);
$ini_array = ini_to_array(stripslashes($tmp['config']));
@@ -385,4 +394,24 @@
+function setDefaultServers(){
+ global $inst, $conf;
+
+ // clients
+ $clients = $inst->db->queryAllRecords("SELECT * FROM ".$conf["mysql"]["database"].".client");
+ if(is_array($clients) && !empty($clients)){
+ foreach($clients as $client){
+ // mailserver
+ if(trim($client['mail_servers']) == '') $inst->db->query("UPDATE ?? SET mail_servers = ? WHERE client_id = ?", $conf["mysql"]["database"].".client", trim($client['default_mailserver']), $client['client_id']);
+ // webserver
+ if(trim($client['web_servers']) == '') $inst->db->query("UPDATE ?? SET web_servers = ? WHERE client_id = ?", $conf["mysql"]["database"].".client", trim($client['default_webserver']), $client['client_id']);
+ // dns server
+ if(trim($client['dns_servers']) == '') $inst->db->query("UPDATE ?? SET dns_servers = ? WHERE client_id = ?", $conf["mysql"]["database"].".client", trim($client['default_dnsserver']), $client['client_id']);
+ // db server
+ if(trim($client['db_servers']) == '') $inst->db->query("UPDATE ?? SET db_servers = ? WHERE client_id = ?", $conf["mysql"]["database"].".client", trim($client['default_dbserver']), $client['client_id']);
+ }
+ }
+
+}
+
?>
--
Gitblit v1.9.1