From ffedcb9a80e8a3ff375993fc349d9ce969a1a4d7 Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Thu, 16 Jun 2016 10:41:37 -0400
Subject: [PATCH] First part of fix for issue #3896 - Unknown column 'default_mailserver' in 'field list' when saving client limits main template

---
 install/sql/ispconfig3.sql                          |   17 +++++++++++------
 install/sql/incremental/upd_dev_collection.sql      |    7 ++++++-
 interface/web/client/form/client_template.tform.php |   19 ++++++++++---------
 3 files changed, 27 insertions(+), 16 deletions(-)

diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql
index 13c895c..f0a3df8 100644
--- a/install/sql/incremental/upd_dev_collection.sql
+++ b/install/sql/incremental/upd_dev_collection.sql
@@ -7,4 +7,9 @@
 UPDATE client SET mail_servers = default_mailserver WHERE (mail_servers = '' OR mail_servers IS NULL);
 UPDATE client SET xmpp_servers = default_xmppserver WHERE (xmpp_servers = '' OR xmpp_servers IS NULL);
 UPDATE client SET db_servers = default_dbserver WHERE (db_servers = '' OR db_servers IS NULL);
-UPDATE client SET dns_servers = default_dnsserver WHERE (dns_servers = '' OR dns_servers IS NULL);
\ No newline at end of file
+UPDATE client SET dns_servers = default_dnsserver WHERE (dns_servers = '' OR dns_servers IS NULL);
+ALTER TABLE `client_template` ADD `default_slave_dnsserver` INT NOT NULL DEFAULT '0' AFTER `limit_dns_slave_zone`;
+ALTER TABLE `client_template` ADD `mail_servers` TEXT NULL DEFAULT NULL AFTER `template_type`;
+ALTER TABLE `client_template` ADD `web_servers` TEXT NULL DEFAULT NULL AFTER `limit_xmpp_httparchive`;
+ALTER TABLE `client_template` ADD `dns_servers` TEXT NULL DEFAULT NULL AFTER `limit_aps`;
+ALTER TABLE `client_template` ADD `db_servers` TEXT NULL DEFAULT NULL AFTER `limit_dns_record`;
\ No newline at end of file
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index a14a0d6..ec750ba 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -170,7 +170,7 @@
   `bank_account_swift` varchar(255) DEFAULT NULL,
   `paypal_email` varchar(255) DEFAULT NULL,
   `default_mailserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `mail_servers` blob,
+  `mail_servers` text,
   `limit_maildomain` int(11) NOT NULL DEFAULT '-1',
   `limit_mailbox` int(11) NOT NULL DEFAULT '-1',
   `limit_mailalias` int(11) NOT NULL DEFAULT '-1',
@@ -185,7 +185,7 @@
   `limit_spamfilter_user` int(11) NOT NULL DEFAULT '0',
   `limit_spamfilter_policy` int(11) NOT NULL DEFAULT '0',
   `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `xmpp_servers` blob,
+  `xmpp_servers` text,
   `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n',
@@ -197,7 +197,7 @@
   `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `default_webserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `web_servers` blob,
+  `web_servers` text,
   `limit_web_ip` text,
   `limit_web_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_web_quota` int(11) NOT NULL DEFAULT '-1',
@@ -222,13 +222,13 @@
   `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n',
   `limit_aps` int(11) NOT NULL DEFAULT '-1',
   `default_dnsserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `db_servers` blob,
+  `db_servers` text,
   `limit_dns_zone` int(11) NOT NULL DEFAULT '-1',
   `default_slave_dnsserver` int(11) unsigned NOT NULL DEFAULT '1',
   `limit_dns_slave_zone` int(11) NOT NULL DEFAULT '-1',
   `limit_dns_record` int(11) NOT NULL DEFAULT '-1',
   `default_dbserver` int(11) NOT NULL DEFAULT '1',
-  `dns_servers` blob,
+  `dns_servers` text,
   `limit_database` int(11) NOT NULL DEFAULT '-1',
   `limit_database_user` int(11) NOT NULL DEFAULT '-1',
   `limit_database_quota` int(11) NOT NULL default '-1',
@@ -301,6 +301,7 @@
   `sys_perm_other` varchar(5) default NULL,
   `template_name` varchar(64) NOT NULL DEFAULT '',
   `template_type` varchar(1) NOT NULL default 'm',
+  `mail_servers` text,
   `limit_maildomain` int(11) NOT NULL default '-1',
   `limit_mailbox` int(11) NOT NULL default '-1',
   `limit_mailalias` int(11) NOT NULL default '-1',
@@ -315,7 +316,7 @@
   `limit_spamfilter_user` int(11) NOT NULL default '0',
   `limit_spamfilter_policy` int(11) NOT NULL default '0',
   `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `xmpp_servers` blob,
+  `xmpp_servers` text,
   `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n',
@@ -325,6 +326,7 @@
   `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n',
+  `web_servers` text,
   `limit_web_ip` text,
   `limit_web_domain` int(11) NOT NULL default '-1',
   `limit_web_quota` int(11) NOT NULL default '-1',
@@ -348,9 +350,12 @@
   `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y',
   `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n',
   `limit_aps` int(11) NOT NULL DEFAULT '-1',
+  `dns_servers` text,
   `limit_dns_zone` int(11) NOT NULL default '-1',
+  `default_slave_dnsserver` int(11) NOT NULL DEFAULT '0',
   `limit_dns_slave_zone` int(11) NOT NULL default '-1',
   `limit_dns_record` int(11) NOT NULL default '-1',
+  `db_servers` text,
   `limit_database` int(11) NOT NULL default '-1',
   `limit_database_user` int(11) NOT NULL DEFAULT '-1',
   `limit_database_quota` int(11) NOT NULL default '-1',
diff --git a/interface/web/client/form/client_template.tform.php b/interface/web/client/form/client_template.tform.php
index a16d21f..0fccee9 100644
--- a/interface/web/client/form/client_template.tform.php
+++ b/interface/web/client/form/client_template.tform.php
@@ -114,7 +114,7 @@
 			'maxlength' => '10',
 			'rows'  => '',
 			'cols'  => ''
-		),
+		),/*
 		'default_mailserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -125,7 +125,7 @@
 			),
 			'value'  => array(''),
 			'name'  => 'default_mailserver'
-		),
+		),*/
 		'limit_maildomain' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
@@ -321,7 +321,7 @@
 			'maxlength' => '10',
 			'rows'  => '',
 			'cols'  => ''
-		),
+		),/*
         'default_xmppserver' => array (
             'datatype' => 'INTEGER',
             'formtype' => 'SELECT',
@@ -332,7 +332,7 @@
             ),
             'value'  => '',
             'name'  => 'default_xmppserver'
-        ),
+        ),*/
         'xmpp_servers' => array (
             'datatype' => 'VARCHAR',
             'formtype' => 'MULTIPLE',
@@ -420,7 +420,7 @@
             'formtype' => 'CHECKBOX',
             'default' => 'n',
             'value'  => array(0 => 'n', 1 => 'y')
-        ),
+        ),/*
 		'default_webserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -431,7 +431,7 @@
 			),
 			'value'  => array(''),
 			'name'  => 'default_webserver'
-		),
+		),*/
 		'limit_web_domain' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
@@ -623,7 +623,7 @@
 			'formtype' => 'CHECKBOX',
 			'default' => 'n',
 			'value'  => array(0 => 'n', 1 => 'y')
-		),
+		),/*
 		'default_dnsserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -634,7 +634,7 @@
 			),
 			'value'  => array(''),
 			'name'  => 'default_dnsserver'
-		),
+		),*/
 		'limit_dns_zone' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
@@ -704,6 +704,7 @@
 			'cols'		=> ''
 		),
 		*/
+		/*
 		'default_dbserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -714,7 +715,7 @@
 			),
 			'value'  => array(''),
 			'name'  => 'default_dbserver'
-		),
+		),*/
 		'limit_database' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',

--
Gitblit v1.9.1