From e1ceb050e19c7574bca146a8da7047ee4ff456b5 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Sun, 10 Jul 2016 05:02:35 -0400
Subject: [PATCH] Merge branch 'stable-3.1'
---
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..6408c18 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 your mysql-config 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